Index: trunk/src/org/openstreetmap/josm/actions/mapmode/DeleteAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/mapmode/DeleteAction.java	(revision 499)
+++ trunk/src/org/openstreetmap/josm/actions/mapmode/DeleteAction.java	(revision 500)
@@ -176,10 +176,8 @@
 		Collection<OsmPrimitive> del = new HashSet<OsmPrimitive>(selection);
 		Collection<Way> waysToBeChanged = new HashSet<Way>();
-		
-		// nodes belonging to a way will be deleted if
-		// 1. this has been requested (alt modifier)
-		// 2. the node is not tagged
-		// 3. the node is not used by anybody else (i.e. has only one backref)
+
 		if (alsoDeleteNodesInWay) {
+			// Delete untagged nodes that are to be unreferenced.
+			Collection<OsmPrimitive> delNodes = new HashSet<OsmPrimitive>();
 			for (OsmPrimitive osm : del) {
 				if (osm instanceof Way) {
@@ -189,11 +187,11 @@
 							n.visit(v);
 							if (v.data.size() == 1) {
-								del.add(n);
-							} else System.out.println("size="+v.data.size());
+								delNodes.add(n);
+							}
 						}
-						else System.out.println("tagged");
 					}
 				}
 			}
+			del.addAll(delNodes);
 		}
 		
