Index: josm/core/src/org/openstreetmap/josm/command/AddPrimitivesCommand.java
===================================================================
--- josm/core/src/org/openstreetmap/josm/command/AddPrimitivesCommand.java	(révision 11850)
+++ josm/core/src/org/openstreetmap/josm/command/AddPrimitivesCommand.java	(copie de travail)
@@ -135,7 +135,8 @@
             }
             createdPrimitives = PurgeCommand.topoSort(createdPrimitives);
         }
-        for (OsmPrimitive osm : createdPrimitives) {
+        for (int i = createdPrimitives.size()-1; i >= 0; i--) {
+            OsmPrimitive osm = createdPrimitives.get(i);
             Optional<PrimitiveData> previous = preExistingData.stream().filter(pd -> pd.getUniqueId() == osm.getUniqueId()).findAny();
             if (previous.isPresent()) {
                 osm.load(previous.get());
