Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Fixed #15529 -- More permissive geojson syntax in constructor

Thanks Wouter Klein Heerenbrink for the report.
  • Loading branch information...
commit c64efe37345cc632e24beb8c7e2a81ef5d3713ba 1 parent 0d9c149
@claudep claudep authored
View
3  django/contrib/gis/gdal/tests/test_geom.py
@@ -121,6 +121,9 @@ def test01e_json(self):
self.assertEqual(json.loads(g.json), json.loads(geom.json))
self.assertEqual(json.loads(g.json), json.loads(geom.geojson))
self.assertEqual(OGRGeometry(g.wkt), OGRGeometry(geom.json))
+ # Test input with some garbage content (but valid json) (#15529)
+ geom = OGRGeometry('{"type": "Point", "coordinates": [ 100.0, 0.0 ], "other": "<test>"}')
+ self.assertIsInstance(geom, OGRGeometry)
def test02_points(self):
"Testing Point objects."
View
2  django/contrib/gis/geometry/regex.py
@@ -9,4 +9,4 @@
r'(?P<type>POINT|LINESTRING|LINEARRING|POLYGON|MULTIPOINT|MULTILINESTRING|MULTIPOLYGON|GEOMETRYCOLLECTION)'
r'[ACEGIMLONPSRUTYZ\d,\.\-\(\) ]+)$',
re.I)
-json_regex = re.compile(r'^(\s+)?\{[\s\w,\[\]\{\}\-\."\':]+\}(\s+)?$')
+json_regex = re.compile(r'^(\s+)?\{.*}(\s+)?$', re.DOTALL)
Please sign in to comment.
Something went wrong with that request. Please try again.