Index: trunk/src/org/openstreetmap/josm/gui/preferences/advanced/ListEditor.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/advanced/ListEditor.java	(revision 6451)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/advanced/ListEditor.java	(revision 6452)
@@ -21,4 +21,6 @@
 import org.openstreetmap.josm.gui.widgets.JosmTextField;
 import org.openstreetmap.josm.tools.GBC;
+import org.openstreetmap.josm.tools.Predicate;
+import org.openstreetmap.josm.tools.Utils;
 import org.openstreetmap.josm.tools.WindowGeometry;
 
@@ -28,4 +30,7 @@
     PrefEntry entry;
 
+    /**
+     * Constructs a new {@code ListEditor}.
+     */
     public ListEditor(final JComponent gui, PrefEntry entry, ListSetting setting) {
         super(gui, tr("Change list setting"), new String[] {tr("OK"), tr("Cancel")});
@@ -42,6 +47,15 @@
     }
 
+    /**
+     * Returns the list of values.
+     * @return The list of values.
+     */
     public List<String> getData() {
-        return data;
+        return new ArrayList<String>(Utils.filter(data, new Predicate<String>() {
+            @Override
+            public boolean evaluate(String object) {
+                return object != null && !object.isEmpty();
+            }
+        }));
     }
 
@@ -101,4 +115,3 @@
         }
     }
-
 }
Index: trunk/src/org/openstreetmap/josm/tools/Predicate.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/Predicate.java	(revision 6451)
+++ trunk/src/org/openstreetmap/josm/tools/Predicate.java	(revision 6452)
@@ -2,7 +2,17 @@
 package org.openstreetmap.josm.tools;
 
-// Used to identify objects that fulfill a certain condition, e.g. when filtering a collection
+/**
+ * Used to identify objects that fulfill a certain condition, e.g. when filtering a collection.
+ *
+ * @param <T> The objects type
+ * @since 3177
+ */
 public interface Predicate<T> {
-    // @return whether the object passes the test or not
+    
+    /**
+     * Determines whether the object passes the test or not
+     * @param object The object to evaluate
+     * @return {@code true} if the object passes the test, {@code false} otherwise
+     */
     public boolean evaluate(T object);
 }
