Index: trunk/src/org/openstreetmap/josm/data/osm/TagMap.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/TagMap.java	(revision 18005)
+++ trunk/src/org/openstreetmap/josm/data/osm/TagMap.java	(revision 18006)
@@ -7,5 +7,4 @@
 import java.util.ArrayList;
 import java.util.Arrays;
-import java.util.Collection;
 import java.util.ConcurrentModificationException;
 import java.util.Iterator;
@@ -75,5 +74,4 @@
             throw new UnsupportedOperationException();
         }
-
     }
 
@@ -103,5 +101,4 @@
             return tags.length / 2;
         }
-
     }
 
@@ -158,5 +155,6 @@
      * @since 10736
      */
-    public TagMap(Collection<Tag> tags) {
+    public TagMap(Iterable<Tag> tags) {
+        this.tags = EMPTY_TAGS;
         for (Tag tag : tags) {
             put(tag.getKey(), tag.getValue());
Index: trunk/test/unit/org/openstreetmap/josm/data/osm/TagMapTest.java
===================================================================
--- trunk/test/unit/org/openstreetmap/josm/data/osm/TagMapTest.java	(revision 18005)
+++ trunk/test/unit/org/openstreetmap/josm/data/osm/TagMapTest.java	(revision 18006)
@@ -3,4 +3,6 @@
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
+
+import java.util.Arrays;
 
 import org.junit.jupiter.api.Test;
@@ -18,5 +20,9 @@
         assertEquals("TagMap[]", new TagMap().toString());
         assertEquals("TagMap[key=val]", new TagMap(new String[]{"key", "val"}).toString());
-        assertEquals("TagMap[key=val,foo=bar]", new TagMap(new String[]{"key", "val", "foo", "bar"}).toString());
+        TagMap foobar = new TagMap(new String[]{"key", "val", "foo", "bar"});
+        assertEquals("TagMap[key=val,foo=bar]", foobar.toString());
+        assertEquals("TagMap[key=val,foo=bar]", new TagMap(foobar).toString());
+        TagCollection coll = new TagCollection(Arrays.asList(new Tag("a", "b")));
+        assertEquals("TagMap[a=b]", new TagMap(coll).toString());
     }
 }
