summaryrefslogtreecommitdiffstats
path: root/webapp/django/contrib/gis/geos/error.py
diff options
context:
space:
mode:
Diffstat (limited to 'webapp/django/contrib/gis/geos/error.py')
-rw-r--r--webapp/django/contrib/gis/geos/error.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/webapp/django/contrib/gis/geos/error.py b/webapp/django/contrib/gis/geos/error.py
new file mode 100644
index 0000000000..46bdfe691a
--- /dev/null
+++ b/webapp/django/contrib/gis/geos/error.py
@@ -0,0 +1,20 @@
+"""
+ This module houses the GEOS exceptions, specifically, GEOSException and
+ GEOSGeometryIndexError.
+"""
+
+class GEOSException(Exception):
+ "The base GEOS exception, indicates a GEOS-related error."
+ pass
+
+class GEOSIndexError(GEOSException, KeyError):
+ """
+ This exception is raised when an invalid index is encountered, and has
+ the 'silent_variable_feature' attribute set to true. This ensures that
+ django's templates proceed to use the next lookup type gracefully when
+ an Exception is raised. Fixes ticket #4740.
+ """
+ # "If, during the method lookup, a method raises an exception, the exception
+ # will be propagated, unless the exception has an attribute
+ # `silent_variable_failure` whose value is True." -- Django template docs.
+ silent_variable_failure = True