diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2022-09-18 02:13:19 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2022-09-18 02:13:19 +0200 |
commit | 2485e5e42df1e260d6d44788bddd7bf04122d953 (patch) | |
tree | e5eb02cc22f2d0659002b153688357b5561acfff | |
parent | b15f12f7e8e6d32ac16ff8ca1a460696018d22fa (diff) | |
download | Ishtar-2485e5e42df1e260d6d44788bddd7bf04122d953.tar.bz2 Ishtar-2485e5e42df1e260d6d44788bddd7bf04122d953.zip |
Town: catch error on surface calculate
-rw-r--r-- | CHANGES.md | 7 | ||||
-rw-r--r-- | ishtar_common/models_common.py | 6 | ||||
-rw-r--r-- | ishtar_common/version.py | 4 |
3 files changed, 14 insertions, 3 deletions
diff --git a/CHANGES.md b/CHANGES.md index d0adb3952..2e0e814da 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -6,6 +6,13 @@ date: 2022-07-10 Ishtar changelog ================ +v3.2.4 - 2022-09-18 +-------------------- + +### Bug fix ### + +- Town: catch error on surface calculate + v3.2.3 - 2022-07-12 -------------------- diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py index aae79c4fe..e164677ba 100644 --- a/ishtar_common/models_common.py +++ b/ishtar_common/models_common.py @@ -23,6 +23,7 @@ from django.contrib.auth.models import User, Group from django.contrib.contenttypes.models import ContentType from django.contrib.gis.db import models from django.contrib.gis.geos import Point +from django.contrib.gis.gdal.error import GDALException from django.contrib.postgres.fields import JSONField from django.contrib.postgres.search import SearchVectorField, SearchVector from django.contrib.sites.models import Site @@ -2024,7 +2025,10 @@ class Town(Imported, models.Model): def generate_area(self, force=False): if not force and (self.surface or not self.limit): return - surface = self.limit.transform(settings.SURFACE_SRID, clone=True).area + try: + surface = self.limit.transform(settings.SURFACE_SRID, clone=True).area + except GDALException: + return False if surface > 214748364 or not surface: return False self.surface = surface diff --git a/ishtar_common/version.py b/ishtar_common/version.py index 116df27d1..59dda6a51 100644 --- a/ishtar_common/version.py +++ b/ishtar_common/version.py @@ -1,5 +1,5 @@ -# 3.2.3 -VERSION = (3, 2, 3) +# 3.2.4 +VERSION = (3, 2, 4) def get_version(): |