Index: trunk/src/org/openstreetmap/josm/command/conflict/ConflictAddCommand.java
===================================================================
--- trunk/src/org/openstreetmap/josm/command/conflict/ConflictAddCommand.java	(revision 8913)
+++ trunk/src/org/openstreetmap/josm/command/conflict/ConflictAddCommand.java	(revision 8914)
@@ -61,5 +61,5 @@
     @Override
     public void undoCommand() {
-        if (Main.map != null && !Main.map.mapView.hasLayer(getLayer())) {
+        if (Main.isDisplayingMapView() && !Main.map.mapView.hasLayer(getLayer())) {
             Main.warn(tr("Layer ''{0}'' does not exist any more. Cannot remove conflict for object ''{1}''.",
                     getLayer().getName(),
Index: trunk/src/org/openstreetmap/josm/command/conflict/ConflictResolveCommand.java
===================================================================
--- trunk/src/org/openstreetmap/josm/command/conflict/ConflictResolveCommand.java	(revision 8913)
+++ trunk/src/org/openstreetmap/josm/command/conflict/ConflictResolveCommand.java	(revision 8914)
@@ -68,13 +68,15 @@
         super.undoCommand();
 
-        if (!Main.map.mapView.hasLayer(getLayer())) {
-            Main.warn(tr("Cannot undo command ''{0}'' because layer ''{1}'' is not present any more",
-                    this.toString(),
-                    getLayer().toString()
-            ));
-            return;
+        if (Main.isDisplayingMapView()) {
+            if (!Main.map.mapView.hasLayer(getLayer())) {
+                Main.warn(tr("Cannot undo command ''{0}'' because layer ''{1}'' is not present any more",
+                        this.toString(),
+                        getLayer().toString()
+                ));
+                return;
+            }
+
+            Main.map.mapView.setActiveLayer(getLayer());
         }
-
-        Main.map.mapView.setActiveLayer(getLayer());
         reconstituteConflicts();
     }
