Index: trunk/src/org/openstreetmap/josm/gui/dialogs/changeset/query/ChangesetQueryTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/changeset/query/ChangesetQueryTask.java	(revision 5365)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/changeset/query/ChangesetQueryTask.java	(revision 5366)
@@ -10,6 +10,8 @@
 import java.util.Set;
 
+import javax.swing.JOptionPane;
 import javax.swing.SwingUtilities;
 
+import org.openstreetmap.josm.Main;
 import org.openstreetmap.josm.data.osm.Changeset;
 import org.openstreetmap.josm.data.osm.ChangesetCache;
@@ -18,4 +20,5 @@
 import org.openstreetmap.josm.gui.PleaseWaitRunnable;
 import org.openstreetmap.josm.gui.dialogs.changeset.ChangesetDownloadTask;
+import org.openstreetmap.josm.gui.util.GuiHelper;
 import org.openstreetmap.josm.io.ChangesetQuery;
 import org.openstreetmap.josm.io.OsmServerChangesetReader;
@@ -93,5 +96,15 @@
         if (canceled) return;
         if (lastException != null) {
-            ExceptionUtil.explainException(lastException);
+            GuiHelper.runInEDTAndWait(new Runnable() {
+                private final Component parent = progressMonitor != null ? progressMonitor.getWindowParent() : null;
+                @Override
+                public void run() {
+                    JOptionPane.showMessageDialog(
+                            parent != null ? parent : Main.parent,
+                            ExceptionUtil.explainException(lastException),
+                            tr("Errors during download"),
+                            JOptionPane.ERROR_MESSAGE);
+                }
+            });
             return;
         }
Index: trunk/src/org/openstreetmap/josm/io/ChangesetQuery.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/ChangesetQuery.java	(revision 5365)
+++ trunk/src/org/openstreetmap/josm/io/ChangesetQuery.java	(revision 5366)
@@ -4,4 +4,6 @@
 import static org.openstreetmap.josm.tools.I18n.tr;
 
+import java.io.UnsupportedEncodingException;
+import java.net.URLEncoder;
 import java.text.DateFormat;
 import java.text.MessageFormat;
@@ -233,5 +235,9 @@
             sb.append("user").append("=").append(uid);
         } else if (userName != null) {
-            sb.append("display_name").append("=").append(userName);
+            try {
+                sb.append("display_name").append("=").append(URLEncoder.encode(userName, "UTF-8"));
+            } catch (UnsupportedEncodingException e) {
+                e.printStackTrace();
+            }
         }
         if (bounds != null) {
@@ -268,4 +274,9 @@
         }
         return sb.toString();
+    }
+
+    @Override
+    public String toString() {
+        return getQueryString();
     }
 
