Index: src/WayDownloaderPlugin.java
===================================================================
--- src/WayDownloaderPlugin.java	(revision 16908)
+++ src/WayDownloaderPlugin.java	(working copy)
@@ -222,19 +223,19 @@
      */
     private boolean workFromWaySelection(Collection<OsmPrimitive> selection) {
 
-        if (selection.size()>1) {
-            //more than one way selected
+        if (selection.size() != 1) {
             return false;
-        } else {
-            Way selectedWay = (Way) selection.toArray()[0];
-            selectedNode = selectedWay.nodes.get(0);
+        }
+        
+        Way selectedWay = (Way) selection.iterator().next();
+        selectedNode = selectedWay.firstNode();
 
-            if (isDownloaded(selectedNode)) {
-                selectedNode = findOtherEnd(selectedWay, selectedNode);
+        if (isDownloaded(selectedNode)) {
+            selectedNode = selectedWay.lastNode();
 
-                if (isDownloaded(selectedNode)) return false;
-            }
+            if (isDownloaded(selectedNode)) return false;
         }
+        
         Main.main.getCurrentDataSet().setSelected(selectedNode);
         return true;
     }
