Changeset 2042 in josm


Ignore:
Timestamp:
2009-09-03T19:02:18+02:00 (15 years ago)
Author:
Gubaer
Message:

fixed #3382: Opening a /user/ page fails for usernames with a space (" ") in them

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/dialogs/UserListDialog.java

    r2034 r2042  
    1111import java.awt.event.MouseAdapter;
    1212import java.awt.event.MouseEvent;
     13import java.io.UnsupportedEncodingException;
     14import java.net.URLEncoder;
    1315import java.text.NumberFormat;
    1416import java.util.ArrayList;
     
    2426
    2527import javax.swing.AbstractAction;
     28import javax.swing.JOptionPane;
    2629import javax.swing.JPanel;
    2730import javax.swing.JScrollPane;
     
    185188            Iterator<User> it = users.iterator();
    186189            while(it.hasNext() && num > 0) {
    187                 launchBrowser(createInfoUrl(it.next()));
     190                String url = createInfoUrl(it.next());
     191                if (url == null) {
     192                    break;
     193                }
     194                launchBrowser(url);
    188195                num--;
    189196            }
     
    193200        protected String createInfoUrl(Object infoObject) {
    194201            User user = (User)infoObject;
    195             return getBaseUserUrl() + "/" + user.name;
     202            try {
     203                return getBaseUserUrl() + "/" + URLEncoder.encode(user.name, "UTF-8");
     204            } catch(UnsupportedEncodingException e) {
     205                e.printStackTrace();
     206                JOptionPane.showMessageDialog(
     207                        Main.parent,
     208                        tr("<html>Failed to create an URL because the encoding ''{0}'' was<br>"
     209                                + "was missing on this system.</html>", "UTF-8"),
     210                                tr("Missing encoding"),
     211                                JOptionPane.ERROR_MESSAGE
     212                );
     213                return null;
     214            }
    196215        }
    197216
Note: See TracChangeset for help on using the changeset viewer.