Index: trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserDialogManager.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserDialogManager.java	(revision 13947)
+++ trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserDialogManager.java	(revision 13948)
@@ -220,6 +220,7 @@
      */
     public void showHistory(final Collection<? extends PrimitiveId> primitives) {
-        hooks.forEach(h -> h.modifyRequestedIds(primitives));
-        final Collection<? extends PrimitiveId> notNewPrimitives = SubclassFilteredCollection.filter(primitives, notNewPredicate);
+        final List<PrimitiveId> realPrimitives = new ArrayList<>(primitives);
+        hooks.forEach(h -> h.modifyRequestedIds(realPrimitives));
+        final Collection<? extends PrimitiveId> notNewPrimitives = SubclassFilteredCollection.filter(realPrimitives, notNewPredicate);
         if (notNewPrimitives.isEmpty()) {
             JOptionPane.showMessageDialog(
@@ -231,5 +232,5 @@
         }
 
-        Collection<? extends PrimitiveId> toLoad = SubclassFilteredCollection.filter(primitives, unloadedHistoryPredicate);
+        Collection<? extends PrimitiveId> toLoad = SubclassFilteredCollection.filter(realPrimitives, unloadedHistoryPredicate);
         if (!toLoad.isEmpty()) {
             HistoryLoadTask task = new HistoryLoadTask();
Index: trunk/src/org/openstreetmap/josm/gui/history/HistoryHook.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/history/HistoryHook.java	(revision 13947)
+++ trunk/src/org/openstreetmap/josm/gui/history/HistoryHook.java	(revision 13948)
@@ -2,5 +2,5 @@
 package org.openstreetmap.josm.gui.history;
 
-import java.util.Collection;
+import java.util.List;
 
 import org.openstreetmap.josm.data.osm.PrimitiveId;
@@ -20,6 +20,7 @@
      * Default implementation is to do no changes.
      * @param ids The current ids to change
+     * @since 13948
      */
-    default void modifyRequestedIds(Collection<? extends PrimitiveId> ids) {
+    default void modifyRequestedIds(List<PrimitiveId> ids) {
     }
 }
