Index: /trunk/src/org/openstreetmap/josm/data/validation/tests/DuplicateNode.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/validation/tests/DuplicateNode.java	(revision 17095)
+++ /trunk/src/org/openstreetmap/josm/data/validation/tests/DuplicateNode.java	(revision 17096)
@@ -334,6 +334,6 @@
         if (testError.getCode() == DUPLICATE_NODE) return false;
         // cannot merge nodes outside download area
-        final Iterator<? extends OsmPrimitive> it = testError.getPrimitives().iterator();
-        return it.hasNext() && !it.next().isOutsideDownloadArea();
+        return testError.getPrimitives().stream().filter(p -> !p.isDeleted()).count() > 1
+                && Command.checkOutlyingOrIncompleteOperation(testError.getPrimitives(), null) == Command.IS_OK;
         // everything else is ok to merge
     }
