Index: /trunk/src/org/openstreetmap/josm/tools/Diff.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/Diff.java	(revision 11106)
+++ /trunk/src/org/openstreetmap/josm/tools/Diff.java	(revision 11107)
@@ -792,5 +792,6 @@
                 otherStart = j;
 
-                for (;;) {
+                boolean loop = true;
+                while (loop) {
                     /* Now find the end of this run of changes.  */
 
@@ -819,5 +820,5 @@
                         ++j;
                     } else {
-                        break;
+                        loop = false;
                     }
                 }
Index: /trunk/src/org/openstreetmap/josm/tools/bugreport/BugReportQueue.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/bugreport/BugReportQueue.java	(revision 11106)
+++ /trunk/src/org/openstreetmap/josm/tools/bugreport/BugReportQueue.java	(revision 11107)
@@ -60,5 +60,5 @@
             reportsToDisplay.add(report);
             if (displayThread == null) {
-                displayThread = new Thread(this::displayAll, "bug-report-display");
+                displayThread = new Thread(new BugReportDisplayRunnable(), "bug-report-display");
                 displayThread.start();
             }
@@ -67,13 +67,18 @@
     }
 
-    private void displayAll() {
-        try {
-            while (true) {
-                ReportedException e = getNext();
-                SuppressionMode suppress = displayFor(e);
-                handleDialogResult(e, suppress);
+    private class BugReportDisplayRunnable implements Runnable {
+
+        private volatile boolean running = true;
+
+        @Override
+        public void run() {
+            try {
+                while (running) {
+                    ReportedException e = getNext();
+                    handleDialogResult(e, displayFor(e));
+                }
+            } catch (InterruptedException e) {
+                displayFor(BugReport.intercept(e));
             }
-        } catch (InterruptedException e) {
-            displayFor(BugReport.intercept(e));
         }
     }
