Index: /trunk/src/org/openstreetmap/josm/gui/layer/GpxLayer.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/GpxLayer.java	(revision 3324)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/GpxLayer.java	(revision 3325)
@@ -325,5 +325,10 @@
                     return;
                 }
-                JFileChooser fc = new JFileChooser(Main.pref.get("geoimage.lastdirectory", Main.pref.get("lastDirectory")));
+                String curDir = Main.pref.get("geoimage.lastdirectory", Main.pref.get("lastDirectory"));
+                if (curDir.equals("")) {
+                    curDir = ".";
+                }
+                JFileChooser fc = new JFileChooser(new File(curDir));
+
                 fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
                 fc.setMultiSelectionEnabled(true);
@@ -336,4 +341,7 @@
                 if (sel == null || sel.length == 0)
                     return;
+                if (!fc.getCurrentDirectory().getAbsolutePath().equals(curDir)) {
+                    Main.pref.put("geoimage.lastdirectory", fc.getCurrentDirectory().getAbsolutePath());
+                }
                 addRecursiveFiles(files, sel);
                 importer.importDataHandleExceptions(files, NullProgressMonitor.INSTANCE);
