Index: trunk/src/org/openstreetmap/josm/gui/datatransfer/data/PrimitiveTransferData.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/datatransfer/data/PrimitiveTransferData.java	(revision 16493)
+++ trunk/src/org/openstreetmap/josm/gui/datatransfer/data/PrimitiveTransferData.java	(revision 16494)
@@ -7,7 +7,8 @@
 import java.util.Collection;
 import java.util.Collections;
-import java.util.HashSet;
+import java.util.LinkedHashSet;
 import java.util.LinkedList;
 import java.util.Queue;
+import java.util.Set;
 
 import org.openstreetmap.josm.data.ProjectionBounds;
@@ -64,5 +65,5 @@
     private PrimitiveTransferData(Collection<? extends OsmPrimitive> primitives, ReferenceGetter referencedGetter) {
         // convert to hash set first to remove duplicates
-        HashSet<OsmPrimitive> visited = new HashSet<>(primitives);
+        Set<OsmPrimitive> visited = new LinkedHashSet<>(primitives);
         this.direct = new ArrayList<>(visited.size());
 
