Index: src/org/openstreetmap/josm/gui/layer/markerlayer/MarkerLayer.java
===================================================================
--- src/org/openstreetmap/josm/gui/layer/markerlayer/MarkerLayer.java	(revision 943)
+++ src/org/openstreetmap/josm/gui/layer/markerlayer/MarkerLayer.java	(working copy)
@@ -80,18 +80,23 @@
 		for (WayPoint wpt : indata.waypoints) {
 			/* calculate time differences in waypoints */
 			double time = wpt.time;
+			boolean wpt_has_link = wpt.attr.containsKey("link");
 			if (firstTime < 0) {
 				firstTime = time;
+				if (wpt_has_link) {
+					for (GpxLink oneLink : (Collection<GpxLink>) wpt.attr.get("link")) {
+						lastLinkedFile = oneLink.uri;
+						break;
+					}
+				}
+			}
+			if (wpt_has_link) {
 				for (GpxLink oneLink : (Collection<GpxLink>) wpt.attr.get("link")) {
+					if (!oneLink.uri.equals(lastLinkedFile))firstTime = time;
 					lastLinkedFile = oneLink.uri;
 					break;
 				}
 			}
-			for (GpxLink oneLink : (Collection<GpxLink>) wpt.attr.get("link")) {
-				if (!oneLink.uri.equals(lastLinkedFile))firstTime = time;
-				lastLinkedFile = oneLink.uri;
-				break;
-			}
             Marker m = Marker.createMarker(wpt, indata.storageFile, this, time, time - firstTime);
             if (m != null)
             	data.add(m);
