Ticket #1532: MarkerLayer.java.2.patch

File MarkerLayer.java.2.patch, 1.2 KB (added by avarab@…, 16 years ago)

FIXED PATCH: Check whether wpt.attr.containsKey("link") before iterating over the wpt.attr.get("link") Collection

  • src/org/openstreetmap/josm/gui/layer/markerlayer/MarkerLayer.java

     
    8080                for (WayPoint wpt : indata.waypoints) {
    8181                        /* calculate time differences in waypoints */
    8282                        double time = wpt.time;
    83                         if (firstTime < 0) {
     83                        boolean wpt_has_link = wpt.attr.containsKey("link");
     84                        if (firstTime < 0 && wpt_has_link) {
    8485                                firstTime = time;
    8586                                for (GpxLink oneLink : (Collection<GpxLink>) wpt.attr.get("link")) {
    8687                                        lastLinkedFile = oneLink.uri;
    8788                                        break;
    8889                                }
    8990                        }
    90                         for (GpxLink oneLink : (Collection<GpxLink>) wpt.attr.get("link")) {
    91                                 if (!oneLink.uri.equals(lastLinkedFile))firstTime = time;
    92                                 lastLinkedFile = oneLink.uri;
    93                                 break;
     91                        if (wpt_has_link) {
     92                                for (GpxLink oneLink : (Collection<GpxLink>) wpt.attr.get("link")) {
     93                                        if (!oneLink.uri.equals(lastLinkedFile))firstTime = time;
     94                                        lastLinkedFile = oneLink.uri;
     95                                        break;
     96                                }
    9497                        }
    9598            Marker m = Marker.createMarker(wpt, indata.storageFile, this, time, time - firstTime);
    9699            if (m != null)