Index: applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/geographic/GeographicReader.java
===================================================================
--- applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/geographic/GeographicReader.java	(revision 35983)
+++ applications/editors/josm/plugins/opendata/src/org/openstreetmap/josm/plugins/opendata/core/io/geographic/GeographicReader.java	(revision 35984)
@@ -181,12 +181,14 @@
         Way tempWay = new Way();
         if (ls != null) {
+            final List<Node> nodes = new ArrayList<>(ls.getNumPoints());
             // Build list of nodes
             for (int i = 0; i < ls.getNumPoints(); i++) {
                 try {
-                    tempWay.addNode(createOrGetNode(ls.getPointN(i)));
+                    nodes.add(createOrGetNode(ls.getPointN(i)));
                 } catch (TransformException | IllegalArgumentException e) {
                     Logging.error("Exception for " + ls + ": " + e.getClass().getName() + ": " + e.getMessage());
                 }
             }
+            tempWay.setNodes(nodes);
             // Find possible duplicated ways
             if (tempWay.getNodesCount() > 0) {
