Index: /trunk/src/org/openstreetmap/josm/data/osm/SimplePrimitiveId.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/osm/SimplePrimitiveId.java	(revision 13968)
+++ /trunk/src/org/openstreetmap/josm/data/osm/SimplePrimitiveId.java	(revision 13969)
@@ -133,8 +133,13 @@
             }
             for (long i = Long.parseLong(firstId); i <= lastIdParsed; i++) {
+                if (i > 0) {
+                    ids.add(new SimplePrimitiveId(i, type));
+                }
+            }
+        } else {
+            long i = Long.parseLong(firstId);
+            if (i > 0) {
                 ids.add(new SimplePrimitiveId(i, type));
             }
-        } else {
-            ids.add(new SimplePrimitiveId(Long.parseLong(firstId), type));
         }
         return ids;
Index: /trunk/src/org/openstreetmap/josm/gui/widgets/OsmIdTextField.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/widgets/OsmIdTextField.java	(revision 13968)
+++ /trunk/src/org/openstreetmap/josm/gui/widgets/OsmIdTextField.java	(revision 13969)
@@ -129,5 +129,5 @@
                 }
             }
-            return true;
+            return !ids.isEmpty();
         }
     }
Index: /trunk/test/unit/org/openstreetmap/josm/data/osm/SimplePrimitiveIdTest.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/data/osm/SimplePrimitiveIdTest.java	(revision 13968)
+++ /trunk/test/unit/org/openstreetmap/josm/data/osm/SimplePrimitiveIdTest.java	(revision 13969)
@@ -63,4 +63,6 @@
         assertEquals("[relation 123, relation 124, way 345, way 346, node 789]",
                 SimplePrimitiveId.fuzzyParse("foo relation/123-24 and way/345-346 but also node/789").toString());
+        assertEquals("[]",
+                SimplePrimitiveId.fuzzyParse("foo relation/0 bar").toString());
     }
 
@@ -93,4 +95,5 @@
         assertEquals("[node 234, node 235]", SimplePrimitiveId.multipleFromString("node/234-235").toString());
         assertEquals("[node 998, node 999, node 1000, node 1001]", SimplePrimitiveId.multipleFromString("node/998-1001").toString());
+        assertEquals("[]", SimplePrimitiveId.multipleFromString("node/0").toString());
     }
 
