Index: trunk/src/org/openstreetmap/josm/actions/AutoScaleAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/AutoScaleAction.java	(revision 10129)
+++ trunk/src/org/openstreetmap/josm/actions/AutoScaleAction.java	(revision 10131)
@@ -8,4 +8,5 @@
 import java.awt.event.ActionEvent;
 import java.awt.event.KeyEvent;
+import java.awt.geom.Area;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -302,5 +303,8 @@
                     } else {
                         lastZoomArea = -1;
-                        v.visit(new Bounds(Main.main.getCurrentDataSet().getDataSourceArea().getBounds2D()));
+                        Area sourceArea = Main.main.getCurrentDataSet().getDataSourceArea();
+                        if (sourceArea != null) {
+                            v.visit(new Bounds(sourceArea.getBounds2D()));
+                        }
                     }
                     lastZoomTime = System.currentTimeMillis();
Index: trunk/src/org/openstreetmap/josm/actions/OverpassDownloadAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/OverpassDownloadAction.java	(revision 10129)
+++ trunk/src/org/openstreetmap/josm/actions/OverpassDownloadAction.java	(revision 10131)
@@ -106,8 +106,11 @@
 
         private void enableActions(boolean enabled) {
-            for (Object key : actionMap.allKeys()) {
-                Action action = actionMap.get(key);
-                if (action != null) {
-                    action.setEnabled(enabled);
+            Object[] allKeys = actionMap.allKeys();
+            if (allKeys != null) {
+                for (Object key : allKeys) {
+                    Action action = actionMap.get(key);
+                    if (action != null) {
+                        action.setEnabled(enabled);
+                    }
                 }
             }
Index: trunk/src/org/openstreetmap/josm/actions/SplitWayAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/SplitWayAction.java	(revision 10129)
+++ trunk/src/org/openstreetmap/josm/actions/SplitWayAction.java	(revision 10131)
@@ -213,7 +213,9 @@
                 }
             }
-            final SplitWayResult result = doSplitWay(getEditLayer(), selectedWay, wayToKeep, newWays, sel);
-            Main.main.undoRedo.add(result.getCommand());
-            getCurrentDataSet().setSelected(result.getNewSelection());
+            if (wayToKeep != null) {
+                final SplitWayResult result = doSplitWay(getEditLayer(), selectedWay, wayToKeep, newWays, sel);
+                Main.main.undoRedo.add(result.getCommand());
+                getCurrentDataSet().setSelected(result.getNewSelection());
+            }
         }
     }
@@ -536,5 +538,5 @@
         final Way wayToKeep = splitStrategy.determineWayToKeep(newWays);
 
-        return doSplitWay(layer, way, wayToKeep, newWays, newSelection);
+        return wayToKeep != null ? doSplitWay(layer, way, wayToKeep, newWays, newSelection) : null;
     }
 
Index: trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetMenu.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetMenu.java	(revision 10129)
+++ trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetMenu.java	(revision 10131)
@@ -7,4 +7,5 @@
 import java.awt.MouseInfo;
 import java.awt.Point;
+import java.awt.PointerInfo;
 import java.awt.event.ActionEvent;
 import java.io.Serializable;
@@ -94,6 +95,9 @@
                 pm.add(copyMenuComponent(c));
             }
-            Point p = MouseInfo.getPointerInfo().getLocation();
-            pm.show(Main.parent, p.x-Main.parent.getX(), p.y-Main.parent.getY());
+            PointerInfo pointerInfo = MouseInfo.getPointerInfo();
+            if (pointerInfo != null) {
+                Point p = pointerInfo.getLocation();
+                pm.show(Main.parent, p.x-Main.parent.getX(), p.y-Main.parent.getY());
+            }
         }
     }
Index: trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/LoadAndZoomHandler.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/LoadAndZoomHandler.java	(revision 10129)
+++ trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/LoadAndZoomHandler.java	(revision 10131)
@@ -291,5 +291,5 @@
 
         // Process optional argument 'select'
-        if (args.containsKey("select")) {
+        if (args != null && args.containsKey("select")) {
             toSelect.clear();
             for (String item : args.get("select").split(",")) {
