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 /ishtar_common/models_common.py | |
parent | b15f12f7e8e6d32ac16ff8ca1a460696018d22fa (diff) | |
download | Ishtar-2485e5e42df1e260d6d44788bddd7bf04122d953.tar.bz2 Ishtar-2485e5e42df1e260d6d44788bddd7bf04122d953.zip |
Town: catch error on surface calculate
Diffstat (limited to 'ishtar_common/models_common.py')
-rw-r--r-- | ishtar_common/models_common.py | 6 |
1 files changed, 5 insertions, 1 deletions
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 |