summaryrefslogtreecommitdiff
path: root/ishtar_common/models_common.py
diff options
context:
space:
mode:
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
commit6021602c9ae5c9e0ee3fb88cec587f2dcfc90cba (patch)
treee5eb02cc22f2d0659002b153688357b5561acfff /ishtar_common/models_common.py
parent43337827f8d3d143bb323c0e828b9df501efca22 (diff)
downloadIshtar-6021602c9ae5c9e0ee3fb88cec587f2dcfc90cba.tar.bz2
Ishtar-6021602c9ae5c9e0ee3fb88cec587f2dcfc90cba.zip
Town: catch error on surface calculate
Diffstat (limited to 'ishtar_common/models_common.py')
-rw-r--r--ishtar_common/models_common.py6
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