Index: trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/Marker.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/Marker.java	(revision 4134)
+++ trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/Marker.java	(revision 4135)
@@ -16,4 +16,5 @@
 import javax.swing.Icon;
 
+import org.openstreetmap.josm.data.coor.CachedLatLon;
 import org.openstreetmap.josm.data.coor.EastNorth;
 import org.openstreetmap.josm.data.coor.LatLon;
@@ -22,5 +23,4 @@
 import org.openstreetmap.josm.data.gpx.WayPoint;
 import org.openstreetmap.josm.data.preferences.IntegerProperty;
-import org.openstreetmap.josm.data.projection.Projections;
 import org.openstreetmap.josm.gui.MapView;
 import org.openstreetmap.josm.tools.ImageProvider;
@@ -70,8 +70,12 @@
                              may be adjusted later to sync with other data, so not final */
 
-    private LatLon coor;
+    private CachedLatLon coor;
 
     public final void setCoor(LatLon coor) {
-        this.coor = new LatLon(coor);
+        if(this.coor == null) {
+            this.coor = new CachedLatLon(coor);
+        } else {
+            this.coor.setCoor(coor);
+        }
     }
 
@@ -81,9 +85,9 @@
 
     public final void setEastNorth(EastNorth eastNorth) {
-        this.coor = Projections.inverseProject(eastNorth);
+        coor.setEastNorth(eastNorth);
     }
 
     public final EastNorth getEastNorth() {
-        return Projections.project(this.coor);
+        return coor.getEastNorth();
     }
 
