Index: /applications/editors/josm/plugins/utilsplugin2/src/org/openstreetmap/josm/plugins/utilsplugin2/actions/TagBufferAction.java
===================================================================
--- /applications/editors/josm/plugins/utilsplugin2/src/org/openstreetmap/josm/plugins/utilsplugin2/actions/TagBufferAction.java	(revision 34792)
+++ /applications/editors/josm/plugins/utilsplugin2/src/org/openstreetmap/josm/plugins/utilsplugin2/actions/TagBufferAction.java	(revision 34793)
@@ -8,7 +8,5 @@
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.HashSet;
 import java.util.List;
-import java.util.Set;
 
 import org.openstreetmap.josm.actions.JosmAction;
@@ -31,5 +29,5 @@
     private static final String TITLE = tr("Copy tags from previous selection");
     private static final TagCollection EmptyTags = new TagCollection();
-    private final Set<OsmPrimitive> selectionBuf = new HashSet<>();
+    private List<OsmPrimitive> selectionBuf = new ArrayList<>();
     private TagCollection tagsToPaste = EmptyTags;
     /**
@@ -72,5 +70,5 @@
         if (getLayerManager().getEditDataSet() == null) {
             setEnabled(false);
-            selectionBuf.clear();
+            selectionBuf = new ArrayList<>();
             tagsToPaste = EmptyTags;
         } else
@@ -84,7 +82,5 @@
                 tagsToPaste = new TagCollection(oldTags);
         }
-        selectionBuf.clear();
-        selectionBuf.addAll(selection);
-
+        selectionBuf = new ArrayList<>(selection);
         setEnabled(!selection.isEmpty() && !tagsToPaste.isEmpty());
     }
@@ -94,5 +90,5 @@
      * @param selection the selection
      */
-    private static TagCollection getCommonTags(Set<OsmPrimitive> selection) {
+    private static TagCollection getCommonTags(List<OsmPrimitive> selection) {
         if (selection.isEmpty())
             return EmptyTags;
