Skip to content

Commit cd544c5

Browse files
authored
Merge pull request #129 from luftj/master
GeoJson MultiPolygon errors with duplicate IDs
2 parents 005be58 + fdba08d commit cd544c5

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

overpass/api.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -200,10 +200,16 @@ def _get_from_overpass(self, query):
200200
return r
201201

202202
def _as_geojson(self, elements):
203-
203+
ids_already_seen = set()
204204
features = []
205205
geometry = None
206206
for elem in elements:
207+
try:
208+
if elem["id"] in ids_already_seen:
209+
continue
210+
ids_already_seen.add(elem["id"])
211+
except KeyError:
212+
raise UnknownOverpassError("Received corrupt data from Overpass (no id).")
207213
elem_type = elem.get("type")
208214
elem_tags = elem.get("tags")
209215
elem_geom = elem.get("geometry", [])

0 commit comments

Comments
 (0)