Index: trunk/src/org/openstreetmap/josm/gui/dialogs/DialogsPanel.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/DialogsPanel.java	(revision 10490)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/DialogsPanel.java	(revision 10491)
@@ -17,4 +17,5 @@
 import org.openstreetmap.josm.tools.CheckParameterUtil;
 import org.openstreetmap.josm.tools.Destroyable;
+import org.openstreetmap.josm.tools.bugreport.BugReport;
 
 /**
@@ -323,5 +324,9 @@
     public void destroy() {
         for (ToggleDialog t : allDialogs) {
-            t.destroy();
+            try {
+                t.destroy();
+            } catch (RuntimeException e) {
+                throw BugReport.intercept(e).put("dialog", t).put("dialog-class", t.getClass());
+            }
         }
     }
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/ToggleDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/ToggleDialog.java	(revision 10490)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/ToggleDialog.java	(revision 10491)
@@ -309,4 +309,9 @@
             }
         }
+
+        @Override
+        public String toString() {
+            return "ToggleDialogAction [" + ToggleDialog.this.toString() + ']';
+        }
     }
 
