Index: branch/0.5/src/org/openstreetmap/josm/data/osm/visitor/SimplePaintVisitor.java
===================================================================
--- branch/0.5/src/org/openstreetmap/josm/data/osm/visitor/SimplePaintVisitor.java	(revision 340)
+++ branch/0.5/src/org/openstreetmap/josm/data/osm/visitor/SimplePaintVisitor.java	(revision 341)
@@ -174,5 +174,9 @@
 	 */
 	protected void drawSegment(Node n1, Node n2, Color col, boolean showDirection) {
-		g.setColor(col);
+
+		if (col != currentColor) {
+			displaySegments(col);
+		}
+		
 		Point p1 = nc.getPoint(n1.eastNorth);
 		Point p2 = nc.getPoint(n2.eastNorth);
@@ -182,5 +186,4 @@
 		if (screen.contains(p1.x, p1.y, p2.x, p2.y) || screen.intersectsLine(line))
 		{
-			g.drawLine(p1.x, p1.y, p2.x, p2.y);
 			currentPath.moveTo(p1.x, p1.y);
 			currentPath.lineTo(p2.x, p2.y);
