Index: trunk/src/org/openstreetmap/josm/data/gpx/WayPoint.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/gpx/WayPoint.java	(revision 14445)
+++ trunk/src/org/openstreetmap/josm/data/gpx/WayPoint.java	(revision 14446)
@@ -179,4 +179,6 @@
                 time = date.getTime() / 1000.;
                 return date;
+            } else if (obj == null) {
+                Logging.info("Waypoint {0} value unset", PT_TIME);
             } else {
                 Logging.warn("Unsupported waypoint {0} value: {1}", PT_TIME, obj);
Index: trunk/src/org/openstreetmap/josm/gui/layer/gpx/ConvertFromGpxLayerAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/gpx/ConvertFromGpxLayerAction.java	(revision 14445)
+++ trunk/src/org/openstreetmap/josm/gui/layer/gpx/ConvertFromGpxLayerAction.java	(revision 14446)
@@ -34,6 +34,4 @@
 import org.openstreetmap.josm.spi.preferences.Config;
 import org.openstreetmap.josm.tools.GBC;
-import org.openstreetmap.josm.tools.Logging;
-import org.openstreetmap.josm.tools.UncheckedParseException;
 import org.openstreetmap.josm.tools.date.DateUtils;
 
@@ -81,12 +79,4 @@
                                 n.put(key, str);
                             }
-                            if (GpxConstants.PT_TIME.equals(key)) {
-                                // timestamps should always be converted
-                                try {
-                                    n.setTimestamp(DateUtils.fromString(str));
-                                } catch (UncheckedParseException e) {
-                                    Logging.log(Logging.LEVEL_WARN, e);
-                                }
-                            }
                         } else if (obj instanceof Date && GpxConstants.PT_TIME.equals(key)) {
                             // timestamps should always be converted
Index: trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/Marker.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/Marker.java	(revision 14445)
+++ trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/Marker.java	(revision 14446)
@@ -13,5 +13,4 @@
 import java.util.ArrayList;
 import java.util.Collection;
-import java.util.Date;
 import java.util.HashMap;
 import java.util.LinkedList;
@@ -260,5 +259,5 @@
     public WayPoint convertToWayPoint() {
         WayPoint wpt = new WayPoint(getCoor());
-        wpt.put(GpxConstants.PT_TIME, timeFormatter.format(new Date(Math.round(time * 1000))));
+        wpt.setTime((long) (time*1000));
         if (text != null) {
             wpt.addExtension("text", text);
Index: trunk/src/org/openstreetmap/josm/io/GpxReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/GpxReader.java	(revision 14445)
+++ trunk/src/org/openstreetmap/josm/io/GpxReader.java	(revision 14446)
@@ -27,5 +27,7 @@
 import org.openstreetmap.josm.data.gpx.WayPoint;
 import org.openstreetmap.josm.tools.Logging;
+import org.openstreetmap.josm.tools.UncheckedParseException;
 import org.openstreetmap.josm.tools.XmlUtils;
+import org.openstreetmap.josm.tools.date.DateUtils;
 import org.xml.sax.Attributes;
 import org.xml.sax.InputSource;
@@ -441,9 +443,14 @@
                     }
                     break;
-                case "time":
+                case GpxConstants.PT_TIME:
+                    try {
+                        currentWayPoint.setTime(DateUtils.fromString(accumulator.toString()));
+                    } catch (UncheckedParseException e) {
+                        Logging.error(e);
+                    }
+                    break;
                 case "cmt":
                 case "desc":
                     currentWayPoint.put(localName, accumulator.toString());
-                    currentWayPoint.setTimeFromAttribute();
                     break;
                 case "rtept":
