Index: trunk/src/org/openstreetmap/josm/gui/dialogs/validator/ValidatorTreePanel.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/validator/ValidatorTreePanel.java	(revision 17436)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/validator/ValidatorTreePanel.java	(revision 17437)
@@ -168,10 +168,13 @@
         if (resetScheduled)
             return;
+        buildTreeInternal(expandAgain);
+        invalidationListeners.fireEvent(Runnable::run);
+    }
+
+    private void buildTreeInternal(boolean expandAgain) {
         final DefaultMutableTreeNode rootNode = new DefaultMutableTreeNode();
 
-        if (errors == null || errors.isEmpty()) {
-            GuiHelper.runInEDTAndWait(() -> valTreeModel.setRoot(rootNode));
-            return;
-        }
+        if (errors == null)
+            errors = new ArrayList<>();
 
         // Remember first selected tree row
@@ -199,5 +202,5 @@
 
         Predicate<TestError> filterToUse = e -> !e.isIgnored();
-        if (!ValidatorPrefHelper.PREF_OTHER.get()) {
+        if (!Boolean.TRUE.equals(ValidatorPrefHelper.PREF_OTHER.get())) {
             filterToUse = filterToUse.and(e -> e.getSeverity() != Severity.OTHER);
         }
@@ -326,6 +329,4 @@
             scrollRowToVisible(selRow);
         }
-
-        invalidationListeners.fireEvent(Runnable::run);
     }
 
