Index: trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/LoadAndZoomHandler.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/LoadAndZoomHandler.java	(revision 13970)
+++ trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/LoadAndZoomHandler.java	(revision 13973)
@@ -13,4 +13,6 @@
 import java.util.Set;
 import java.util.concurrent.Future;
+
+import javax.swing.JOptionPane;
 
 import org.openstreetmap.josm.actions.AutoScaleAction;
@@ -31,4 +33,5 @@
 import org.openstreetmap.josm.gui.MainApplication;
 import org.openstreetmap.josm.gui.MapFrame;
+import org.openstreetmap.josm.gui.Notification;
 import org.openstreetmap.josm.gui.util.GuiHelper;
 import org.openstreetmap.josm.io.remotecontrol.AddTagsDialog;
@@ -192,5 +195,4 @@
                 }
                 toSelect.clear();
-                isKeepingCurrentSelection = false;
                 ds.setSelected(newSel);
                 zoom(newSel, bbox);
@@ -235,5 +237,23 @@
         }
 
-        AddTagsDialog.addTags(args, sender, forTagAdd);
+        // add tags to objects
+        if (args.containsKey("addtags")) {
+            // needs to run in EDT since forTagAdd is updated in EDT as well
+            GuiHelper.executeByMainWorkerInEDT(() -> {
+                if (!forTagAdd.isEmpty()) {
+                    AddTagsDialog.addTags(args, sender, forTagAdd);
+                } else {
+                    new Notification(isKeepingCurrentSelection
+                            ? tr("You clicked on a JOSM remotecontrol link that would apply tags onto selected objects.\n"
+                                    + "Since no objects have been selected before this click, no tags were added.\n"
+                                    + "Select one or more objects and click the link again.")
+                            : tr("You clicked on a JOSM remotecontrol link that would apply tags onto objects.\n"
+                                    + "Unfortunately that link seems to be broken.\n"
+                                    + "Technical explanation: the URL query parameter ''select='' or ''search='' has an invalid value.\n"
+                                    + "Ask someone at the origin of the clicked link to fix this.")
+                        ).setIcon(JOptionPane.WARNING_MESSAGE).setDuration(Notification.TIME_LONG).show();
+                }
+            });
+        }
     }
 
