Index: trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/Combo.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/Combo.java	(revision 9464)
+++ trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/Combo.java	(revision 9465)
@@ -39,5 +39,7 @@
             lhm.put(def, new PresetListEntry(def));
         }
-        lhm.put("", new PresetListEntry(""));
+        if (!lhm.containsKey("")) {
+            lhm.put("", new PresetListEntry(""));
+        }
 
         combo = new JosmComboBox<>(lhm.values().toArray(new PresetListEntry[0]));
Index: trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/ComboMultiSelect.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/ComboMultiSelect.java	(revision 9464)
+++ trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/ComboMultiSelect.java	(revision 9465)
@@ -201,11 +201,8 @@
         public String getListDisplay() {
             if (value.equals(DIFFERENT))
-                return "<b>"+DIFFERENT.replaceAll("<", "&lt;").replaceAll(">", "&gt;")+"</b>";
-
-            if (value.isEmpty())
-                return "&nbsp;";
+                return "<b>" + Utils.escapeReservedCharactersHTML(DIFFERENT) + "</b>";
 
             final StringBuilder res = new StringBuilder("<b>");
-            res.append(getDisplayValue(true).replaceAll("<", "&lt;").replaceAll(">", "&gt;"))
+            res.append(Utils.escapeReservedCharactersHTML(getDisplayValue(true)))
                .append("</b>");
             if (getShortDescription(true) != null) {
