Index: src/org/openstreetmap/josm/plugins/directdownload/DirectDownload.java
===================================================================
--- src/org/openstreetmap/josm/plugins/directdownload/DirectDownload.java	(revision 34484)
+++ src/org/openstreetmap/josm/plugins/directdownload/DirectDownload.java	(working copy)
@@ -59,23 +59,26 @@
                 if (data == null) {
                     return;
                 }
+                GpxData dataNew = new GpxData();
 
                 for (GpxTrack trk : data.getTracks()) {
                     HashMap<String, Object> attrib = new HashMap<>(trk.getAttributes());
                     if (!trk.getAttributes().containsKey(GpxConstants.GPX_NAME)) {
-                        System.out.println(track.filename);
+                        // System.out.println(track.filename);
                         attrib.put(GpxConstants.GPX_NAME, track.filename);
                     }
                     if (!trk.getAttributes().containsKey(GpxConstants.GPX_DESC)) {
-                        System.out.println(track.description);
+                        // System.out.println(track.description);
                         attrib.put(GpxConstants.GPX_DESC, track.description);
                     }
                     // replace the existing trace in the unmodifiable tracks
                     data.removeTrack(trk);
-                    trk = new ImmutableGpxTrack(new ArrayList<>(trk.getSegments()), attrib);
-                    data.addTrack(trk);
+                    GpxTrack trkNew = new ImmutableGpxTrack(new ArrayList<>(trk.getSegments()), attrib);
+                    dataNew.addTrack(trkNew);
                 }
 
+                data = dataNew;
+
                 final GpxLayer gpxLayer = new GpxLayer(data, (track.filename + " " + track.description).trim());
 
                 if (data.hasRoutePoints() || data.hasTrackPoints()) {
