diff options
Diffstat (limited to 'upload/osm2change-reorder.patch')
-rw-r--r-- | upload/osm2change-reorder.patch | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/upload/osm2change-reorder.patch b/upload/osm2change-reorder.patch new file mode 100644 index 0000000..d97a879 --- /dev/null +++ b/upload/osm2change-reorder.patch @@ -0,0 +1,38 @@ +--- osm2change.py 2009-09-18 00:14:45.000000000 +0200 ++++ osm2change-modified.py 2009-09-18 00:27:30.000000000 +0200 +@@ -73,7 +73,18 @@ try: + + operation = {} + for opname in [ "create", "modify", "delete" ]: +- operation[opname] = ElementTree.SubElement(output_root, ++ operation[opname] = {} ++ for opname, elname in [ ++ ("create", "node"), ++ ("modify", "node"), ++ ("create", "way"), ++ ("modify", "way"), ++ ("create", "relation"), ++ ("modify", "relation"), ++ ("delete", "relation"), ++ ("delete", "way"), ++ ("delete", "node") ]: ++ operation[opname][elname] = ElementTree.SubElement(output_root, + opname, output_attr) + + for element in root: +@@ -83,12 +94,12 @@ try: + opname = element.attrib.pop("action") + else: + continue +- operation[opname].append(element) ++ operation[opname][element.tag].append(element) + + # Does this account for all cases? Also, is it needed? + # (cases like relations containing relations... is that allowed?) +- osmsort(operation["create"], [ "node", "way", "relation" ]) +- osmsort(operation["delete"], [ "relation", "way", "node" ]) ++ #osmsort(operation["create"], [ "node", "way", "relation" ]) ++ #osmsort(operation["delete"], [ "relation", "way", "node" ]) + + output_tree.write(filename_base + ".osc", "utf-8") + except Exception,err: |