Index: trunk/src/org/openstreetmap/josm/actions/mapmode/DrawAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/mapmode/DrawAction.java	(revision 1446)
+++ trunk/src/org/openstreetmap/josm/actions/mapmode/DrawAction.java	(revision 1447)
@@ -243,4 +243,5 @@
         if(!Main.map.mapView.isDrawableLayer())
             return;
+        wayIsFinished = false;
         computeHelperLine();
         addHighlighting();
@@ -806,5 +807,5 @@
 
     public void paint(Graphics g, MapView mv) {
-        if (!drawHelperLine) return;
+        if (!drawHelperLine || wayIsFinished) return;
 
         // sanity checks
@@ -882,5 +883,5 @@
          * Check whether a connection will be made
          */
-        if (currentBaseNode != null) {
+        if (currentBaseNode != null && !wayIsFinished) {
             if(alt)
                 rv += " " + tr("Start new way from last node.");
@@ -888,11 +889,15 @@
                 rv += " " + tr("Continue way from last node.");
         }
-
+        
+        Node n = mouseOnExistingNode;
         /*
          * Handle special case: Highlighted node == selected node => finish drawing
          */
-        Node n = mouseOnExistingNode;
+        
         if(n != null && Main.ds.getSelectedNodes().contains(n)) {
-            rv = tr("Finish drawing.");
+            if(wayIsFinished)
+                rv = tr("Select node under cursor.");
+            else
+                rv = tr("Finish drawing.");
         }
 
