Index: trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/ComboMultiSelect.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/ComboMultiSelect.java	(revision 9570)
+++ trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/ComboMultiSelect.java	(revision 9571)
@@ -250,11 +250,15 @@
                 return "<b>" + Utils.escapeReservedCharactersHTML(DIFFERENT) + "</b>";
 
-            final StringBuilder res = new StringBuilder("<b>");
-            res.append(Utils.escapeReservedCharactersHTML(getDisplayValue(true)))
-               .append("</b>");
-            if (getShortDescription(true) != null) {
+            String displayValue = Utils.escapeReservedCharactersHTML(getDisplayValue(true));
+            String shortDescription = getShortDescription(true);
+
+            if (displayValue.isEmpty() && (shortDescription == null || shortDescription.isEmpty()))
+                return "&nbsp;";
+
+            final StringBuilder res = new StringBuilder("<b>").append(displayValue).append("</b>");
+            if (shortDescription != null) {
                 // wrap in table to restrict the text width
                 res.append("<div style=\"width:300px; padding:0 0 5px 5px\">")
-                   .append(getShortDescription(true))
+                   .append(shortDescription)
                    .append("</div>");
             }
@@ -295,7 +299,8 @@
         @Override
         public String toString() {
-            if (value.equals(DIFFERENT))
+            if (DIFFERENT.equals(value))
                 return DIFFERENT;
-            return getDisplayValue(true).replaceAll("<.*>", ""); // remove additional markup, e.g. <br>
+            String displayValue = getDisplayValue(true);
+            return displayValue != null ? displayValue.replaceAll("<.*>", "") : null; // remove additional markup, e.g. <br>
         }
 
