Changeset 1621 in josm for trunk/src/org/openstreetmap


Ignore:
Timestamp:
2009-05-25T17:08:44+02:00 (15 years ago)
Author:
stoecker
Message:

fix #2655 - NPE with empty role

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/actions/CombineWayAction.java

    r1530 r1621  
    8888                    for(Way w : selectedWays) {
    8989                        if (rm.member == w) {
    90                             Pair<Relation,String> pair = new Pair<Relation,String>(r, rm.role);
     90                            Pair<Relation,String> pair = new Pair<Relation,String>(r, rm.role == null ? "" : rm.role);
    9191                            HashSet<Way> waylinks = new HashSet<Way>();
    9292                            if (backlinks.containsKey(pair)) {
     
    109109        for (HashSet<Way> waylinks : backlinks.values()) {
    110110            if (!waylinks.containsAll(selectedWays)) {
    111                 int option = new ExtendedDialog(Main.parent, 
    112                         tr("Combine ways with different memberships?"), 
     111                int option = new ExtendedDialog(Main.parent,
     112                        tr("Combine ways with different memberships?"),
    113113                        tr("The selected ways have differing relation memberships.  "
    114114                            + "Do you still want to combine them?"),
    115                         new String[] {tr("Combine Anyway"), tr("Cancel")}, 
    116                         new String[] {"combineway.png", "cancel.png"}).getValue(); 
     115                        new String[] {tr("Combine Anyway"), tr("Cancel")},
     116                        new String[] {"combineway.png", "cancel.png"}).getValue();
    117117                if (option == 1) break;
    118                
     118
    119119                return;
    120120            }
     
    138138            Object secondTry = actuallyCombineWays(selectedWays, true);
    139139            if (secondTry instanceof List) {
    140                 int option = new ExtendedDialog(Main.parent, 
    141                     tr("Change directions?"), 
     140                int option = new ExtendedDialog(Main.parent,
     141                    tr("Change directions?"),
    142142                    tr("The ways can not be combined in their current directions.  "
    143143                        + "Do you want to reverse some of them?"),
    144                     new String[] {tr("Reverse and Combine"), tr("Cancel")}, 
    145                     new String[] {"wayflip.png", "cancel.png"}).getValue(); 
     144                    new String[] {tr("Reverse and Combine"), tr("Cancel")},
     145                    new String[] {"wayflip.png", "cancel.png"}).getValue();
    146146                if (option != 1) return;
    147147                nodeList = (List<Node>) secondTry;
     
    187187
    188188        if (!components.isEmpty()) {
    189             int answer = new ExtendedDialog(Main.parent, 
    190                 tr("Enter values for all conflicts."), 
     189            int answer = new ExtendedDialog(Main.parent,
     190                tr("Enter values for all conflicts."),
    191191                p,
    192                 new String[] {tr("Solve Conflicts"), tr("Cancel")}, 
    193                 new String[] {"dialogs/conflict.png", "cancel.png"}).getValue(); 
     192                new String[] {tr("Solve Conflicts"), tr("Cancel")},
     193                new String[] {"dialogs/conflict.png", "cancel.png"}).getValue();
    194194            if (answer != 1) return;
    195            
     195
    196196            for (Entry<String, JComboBox> e : components.entrySet())
    197197                newWay.put(e.getKey(), e.getValue().getEditor().getItem().toString());
Note: See TracChangeset for help on using the changeset viewer.