Index: trunk/src/org/openstreetmap/josm/command/DeleteCommand.java
===================================================================
--- trunk/src/org/openstreetmap/josm/command/DeleteCommand.java	(revision 15873)
+++ trunk/src/org/openstreetmap/josm/command/DeleteCommand.java	(revision 15874)
@@ -441,7 +441,8 @@
 
         Collection<Command> cmds = new LinkedList<>();
+        Set<Node> nodesToRemove = new HashSet<>(Utils.filteredCollection(primitivesToDelete, Node.class));
         for (Way w : waysToBeChanged) {
             Way wnew = new Way(w);
-            wnew.removeNodes(new HashSet<>(Utils.filteredCollection(primitivesToDelete, Node.class)));
+            wnew.removeNodes(nodesToRemove);
             if (wnew.getNodesCount() < 2) {
                 primitivesToDelete.add(w);
