Index: src/org/openstreetmap/josm/Main.java
===================================================================
--- src/org/openstreetmap/josm/Main.java	(Revision 1797)
+++ src/org/openstreetmap/josm/Main.java	(Arbeitskopie)
@@ -227,16 +227,27 @@
     }
     /**
      * Replies the current edit layer. Creates one if no {@see OsmDataLayer}
-     * exists. Replies null, if the currently active layer isn't an instance
-     * of {@see OsmDataLayer}.
+     * exists.
      * 
      * @return the current edit layer
      */
     public final OsmDataLayer createOrGetEditLayer() {
-        if (map == null || map.mapView.getEditLayer() == null) {
+        OsmDataLayer osmDataLayer = null;
+        if ((map != null) &&
+            ((osmDataLayer = map.mapView.getEditLayer()) == null)) {
+            for (Layer layer : Main.map.mapView.getAllLayers()) {
+                if (layer instanceof OsmDataLayer) {
+                    osmDataLayer = (OsmDataLayer) layer;
+                    break;
+                }
+            }
+        }
+        if (osmDataLayer == null) {
             menu.newAction.actionPerformed(null);
+            osmDataLayer = map.mapView.getEditLayer();
         }
-        return map.mapView.getEditLayer();
+
+        return osmDataLayer;
     }
 
     /**
