Ignore:
Timestamp:
2014-09-21T20:16:12+02:00 (10 years ago)
Author:
donvip
Message:

[josm_imagery-xml-bounds] fix #10535 - IllegalStateException when selecting multipolygons

File:
1 edited

Legend:

Unmodified
Added
Removed
  • applications/editors/josm/plugins/imagery-xml-bounds/src/org/openstreetmap/josm/plugins/imageryxmlbounds/actions/ComputeBoundsAction.java

    r30386 r30662  
    8787                // Remove closed ways already inside a selected multipolygon
    8888                for (Iterator<Way> it = closedWays.iterator(); it.hasNext(); ) {
    89                         Way way = it.next();
    90                         for (Relation mp : multipolygons) {
    91                                 for (RelationMember mb : mp.getMembers()) {
    92                                         if (mb.getMember().equals(way)) {
    93                                                 it.remove();
    94                                         }
    95                                 }
    96                         }
     89                        processIterator(it);
    9790                }
    9891                // Enable the action if at least one area is found
    9992                setEnabled(!multipolygons.isEmpty() || !closedWays.isEmpty());
    10093        }
     94
     95    private void processIterator(Iterator<Way> it) {
     96        Way way = it.next();
     97        for (Relation mp : multipolygons) {
     98                for (RelationMember mb : mp.getMembers()) {
     99                        if (mb.getMember().equals(way)) {
     100                                it.remove();
     101                                return;
     102                        }
     103                }
     104        }
     105    }
    101106
    102107        public final String getXml() {
Note: See TracChangeset for help on using the changeset viewer.