Index: trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java	(revision 15826)
+++ trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java	(revision 15827)
@@ -41,4 +41,5 @@
 import org.openstreetmap.josm.gui.MainApplication;
 import org.openstreetmap.josm.gui.progress.swing.PleaseWaitProgressMonitor;
+import org.openstreetmap.josm.gui.util.GuiHelper;
 import org.openstreetmap.josm.gui.util.WindowGeometry;
 import org.openstreetmap.josm.gui.widgets.HistoryComboBox;
@@ -292,9 +293,11 @@
      */
     Collection<DownloadTask> askWhichTasksToLoad(final Collection<DownloadTask> tasks) {
-        final JList<DownloadTask> list = new JList<>(tasks.toArray(new DownloadTask[0]));
-        list.addSelectionInterval(0, tasks.size() - 1);
-        final ExtendedDialog dialog = new WhichTasksToPerformDialog(list);
-        dialog.showDialog();
-        return dialog.getValue() == 1 ? list.getSelectedValuesList() : Collections.<DownloadTask>emptyList();
+        return GuiHelper.runInEDTAndWaitAndReturn(() -> {
+            final JList<DownloadTask> list = new JList<>(tasks.toArray(new DownloadTask[0]));
+            list.addSelectionInterval(0, tasks.size() - 1);
+            final ExtendedDialog dialog = new WhichTasksToPerformDialog(list);
+            dialog.showDialog();
+            return dialog.getValue() == 1 ? list.getSelectedValuesList() : Collections.<DownloadTask>emptyList();
+        });
     }
 
