Index: /applications/editors/josm/plugins/editgpx/src/org/openstreetmap/josm/plugins/editgpx/GPXLayerImportAction.java
===================================================================
--- /applications/editors/josm/plugins/editgpx/src/org/openstreetmap/josm/plugins/editgpx/GPXLayerImportAction.java	(revision 28203)
+++ /applications/editors/josm/plugins/editgpx/src/org/openstreetmap/josm/plugins/editgpx/GPXLayerImportAction.java	(revision 28204)
@@ -81,4 +81,5 @@
 
             JCheckBox dropFirst = new JCheckBox(tr("Drop existing path"));
+            dropFirst.setEnabled(!this.data.getTracks().isEmpty());
 
             panel.add(layerList);
@@ -99,8 +100,11 @@
             }
 
-            for (Object o : layerList.getSelectedValues()) {
-		GpxLayer gpx = (GpxLayer )o;
-                synchronized(importing) {
-                    this.data.load(gpx.data, dropFirst.isSelected());
+            if (dropFirst.isSelected()) {
+                this.data.getTracks().clear();
+            }
+            synchronized(importing) {
+                for (Object o : layerList.getSelectedValues()) {
+                    GpxLayer gpx = (GpxLayer )o;
+                    this.data.load(gpx.data);
                 }
             }
Index: /applications/editors/josm/plugins/editgpx/src/org/openstreetmap/josm/plugins/editgpx/data/EditGpxData.java
===================================================================
--- /applications/editors/josm/plugins/editgpx/src/org/openstreetmap/josm/plugins/editgpx/data/EditGpxData.java	(revision 28203)
+++ /applications/editors/josm/plugins/editgpx/src/org/openstreetmap/josm/plugins/editgpx/data/EditGpxData.java	(revision 28204)
@@ -16,7 +16,5 @@
     private final List<WayPoint> waypoints = new ArrayList<WayPoint>();
 
-    public void load(GpxData data, boolean drop) {
-        if(drop)
-            tracks.clear();
+    public void load(GpxData data) {
         for (GpxTrack track: data.tracks) {
             tracks.add(new EditGpxTrack(track));
