Index: branch/0.5/.classpath
===================================================================
--- branch/0.5/.classpath	(revision 338)
+++ branch/0.5/.classpath	(revision 340)
@@ -2,6 +2,4 @@
 <classpath>
 	<classpathentry kind="src" path="src"/>
-	<classpathentry kind="src" path="test/functional"/>
-	<classpathentry kind="src" path="test/unit"/>
 	<classpathentry excluding="build/|dist/|src/|test/" including="images/" kind="src" path=""/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
Index: branch/0.5/LICENSE
===================================================================
--- branch/0.5/LICENSE	(revision 338)
+++ branch/0.5/LICENSE	(revision 340)
@@ -1,8 +1,8 @@
 JOSM and all files included in this archive and the source archive from
 
-http://www.eigenheimstrasse.de/svn/josm
-
-except the JDOM files, MinML2 files and parts of UTM.java are
-copyrighted 2005-2006 by Immanuel Scholz.
+http://josm.openstreetmap.de/svn
+
+Most files are copyrighted 2005-2007 by Immanuel Scholz, some are by
+Frederick Ramm and other people.
 The files are distributed under the terms of the following License:
 
Index: branch/0.5/README
===================================================================
--- branch/0.5/README	(revision 338)
+++ branch/0.5/README	(revision 340)
@@ -60,12 +60,8 @@
 
 Download it directly from the subversion at 
-http://www.eigenheimstrasse.de/svn/josm. To use the command line
+https://josm.openstreetmap.de/svn/trunk. To use the command line
 subverion client, type
 
-svn co http://www.eigenheimstrasse.de/svn/josm
-
-
-And gimme feedback: josm@eigenheimstrasse.de (start your mail subject 
-with "JOSM", so my spam filter will not eat you)
+svn co https://josm.openstreetmap.de/svn/trunk
 
 
Index: branch/0.5/src/org/openstreetmap/josm/actions/HelpAction.java
===================================================================
--- branch/0.5/src/org/openstreetmap/josm/actions/HelpAction.java	(revision 338)
+++ branch/0.5/src/org/openstreetmap/josm/actions/HelpAction.java	(revision 340)
@@ -47,5 +47,5 @@
 
 	private JFrame helpBrowser = new JFrame("JOSM Online Help");
-	private String baseurl = Main.pref.get("help.baseurl", "http://josm.eigenheimstrasse.de");
+	private String baseurl = Main.pref.get("help.baseurl", "http://josm.openstreetmap.de");
 	private JEditorPane help = new JEditorPane();
 	private WikiReader reader = new WikiReader(baseurl);
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 338)
+++ branch/0.5/src/org/openstreetmap/josm/data/osm/visitor/SimplePaintVisitor.java	(revision 340)
@@ -4,6 +4,8 @@
 import java.awt.Color;
 import java.awt.Graphics;
+import java.awt.Graphics2D;
 import java.awt.Point;
 import java.awt.Rectangle;
+import java.awt.geom.GeneralPath;
 import java.awt.geom.Line2D;
 
@@ -41,9 +43,38 @@
 
 	protected static final double PHI = Math.toRadians(20);
+	
+	/**
+	 * Preferences
+	*/
+	protected Color inactiveColor;
+	protected Color selectedColor;
+	protected Color nodeColor;
+	protected Color dfltWayColor;
+	protected Color incompleteColor;
+	protected Color backgroundColor;
+	protected boolean showDirectionArrow;
+	protected boolean showOrderNumber;
+	
+	/**
+	 * Draw subsequent segments of same color as one Path
+	 */
+	protected Color currentColor = null;
+	protected GeneralPath currentPath = new GeneralPath();
 
 	public void visitAll(DataSet data) {
+		
+		inactiveColor = getPreferencesColor("inactive", Color.DARK_GRAY);
+		selectedColor = getPreferencesColor("selected", Color.WHITE);
+		nodeColor = getPreferencesColor("node", Color.RED);
+		dfltWayColor = getPreferencesColor("way", darkblue);
+		incompleteColor = getPreferencesColor("incomplete way", darkerblue);
+		backgroundColor = getPreferencesColor("background", Color.BLACK);
+		showDirectionArrow = Main.pref.getBoolean("draw.segment.direction");
+		showOrderNumber = Main.pref.getBoolean("draw.segment.order_number");
+		
 		for (final OsmPrimitive osm : data.ways)
 			if (!osm.deleted && !osm.selected)
 				osm.visit(this);
+		displaySegments(null);
 		for (final OsmPrimitive osm : data.nodes)
 			if (!osm.deleted && !osm.selected)
@@ -52,4 +83,5 @@
 			if (!osm.deleted)
 				osm.visit(this);
+		displaySegments(null);
 	}
 
@@ -63,9 +95,9 @@
 		Color color = null;
 		if (inactive)
-			color = getPreferencesColor("inactive", Color.DARK_GRAY);
+			color = inactiveColor;
 		else if (n.selected)
-			color = getPreferencesColor("selected", Color.WHITE);
+			color = selectedColor;
 		else
-			color = getPreferencesColor("node", Color.RED);
+			color = nodeColor;
 		drawNode(n, color);
 	}
@@ -78,11 +110,9 @@
 		Color wayColor;
 		if (inactive)
-			wayColor = getPreferencesColor("inactive", Color.DARK_GRAY);
+			wayColor = inactiveColor;
 		else {
-			wayColor = getPreferencesColor("way", darkblue);
-		}
-
-		boolean showDirectionArrow = Main.pref.getBoolean("draw.segment.direction");
-		boolean showOrderNumber = Main.pref.getBoolean("draw.segment.order_number");
+			wayColor = dfltWayColor;
+		}
+
 		int orderNumber = 0;
 		Node lastN = null;
@@ -93,5 +123,5 @@
 			}
 			orderNumber++;
-			drawSegment(lastN, n, w.selected && !inactive ? getPreferencesColor("selected", Color.WHITE) : wayColor, showDirectionArrow);
+			drawSegment(lastN, n, w.selected && !inactive ? selectedColor : wayColor, showDirectionArrow);
 			if (showOrderNumber)
 				drawOrderNumber(lastN, n, orderNumber);
@@ -101,6 +131,7 @@
 
 	public void visit(Relation e) {
-		// relations are not drawn.
-	}
+		// relations are not (yet?) drawn.
+	}
+	
 	/**
 	 * Draw an number of the order of the two consecutive nodes within the
@@ -117,5 +148,5 @@
 		if (screen.contains(x,y)) {
 			Color c = g.getColor();
-			g.setColor(getPreferencesColor("background", Color.BLACK));
+			g.setColor(backgroundColor);
 			g.fillRect(x-1, y-12, 8*strlen+1, 14);
 			g.setColor(c);
@@ -135,5 +166,5 @@
 		Rectangle screen = g.getClipBounds();
 
-		if ( screen.contains(p.x, p.y) )
+		if (screen.contains(p.x, p.y))
 			g.drawRect(p.x-1, p.y-1, 2, 2);
 	}
@@ -152,9 +183,12 @@
 		{
 			g.drawLine(p1.x, p1.y, p2.x, p2.y);
-	
+			currentPath.moveTo(p1.x, p1.y);
+			currentPath.lineTo(p2.x, p2.y);
+			
 			if (showDirection) {
 				double t = Math.atan2(p2.y-p1.y, p2.x-p1.x) + Math.PI;
-		        g.drawLine(p2.x,p2.y, (int)(p2.x + 10*Math.cos(t-PHI)), (int)(p2.y + 10*Math.sin(t-PHI)));
-		        g.drawLine(p2.x,p2.y, (int)(p2.x + 10*Math.cos(t+PHI)), (int)(p2.y + 10*Math.sin(t+PHI)));
+				currentPath.lineTo((int)(p2.x + 10*Math.cos(t-PHI)), (int)(p2.y + 10*Math.sin(t-PHI)));
+				currentPath.moveTo((int)(p2.x + 10*Math.cos(t+PHI)), (int)(p2.y + 10*Math.sin(t+PHI)));
+				currentPath.lineTo(p2.x, p2.y);  
 			}
 		}
@@ -169,6 +203,5 @@
 		return ColorHelper.html2color(colStr);
 	}
-
-
+	
 	public void setGraphics(Graphics g) {
     	this.g = g;
@@ -178,3 +211,12 @@
     	this.nc = nc;
     }
+
+	protected void displaySegments(Color newColor) {
+		if (currentPath != null) {
+			g.setColor(currentColor);
+			((Graphics2D) g).draw(currentPath);
+			currentPath = new GeneralPath();
+			currentColor = newColor;
+		}
+	}
 }
Index: branch/0.5/src/org/openstreetmap/josm/gui/ConflictResolver.java
===================================================================
--- branch/0.5/src/org/openstreetmap/josm/gui/ConflictResolver.java	(revision 338)
+++ branch/0.5/src/org/openstreetmap/josm/gui/ConflictResolver.java	(revision 340)
@@ -156,15 +156,4 @@
 		}
 		
-		if (this.conflicts.isEmpty()) {
-			JOptionPane.showMessageDialog(Main.parent,
-					"The ConflictResolver and the Merger disagree about conflicts in your dataset.\n"+
-					"Of course, this is a bug.\n"+
-					"The bug is very old, but unfortunatly, Imi (programmer) was not able to catch it.\n"+
-					"If you know exactly what bounding boxes you downloaded (bookmarks?) and/or what\n"+
-					"files you opened (have them ready?) to display this message again, pretty please\n"+
-					"inform Imi at josm@eigenheimstrasse.de about the details.\n"+
-					"Thanks.");
-			//throw new RuntimeException("No conflicts but in conflict list:\n"+Arrays.toString(conflicts.entrySet().toArray()));
-		}
 
 		// have to initialize the JTables here and not in the declaration, because its constructor
Index: branch/0.5/src/org/openstreetmap/josm/gui/preferences/TaggingPresetPreference.java
===================================================================
--- branch/0.5/src/org/openstreetmap/josm/gui/preferences/TaggingPresetPreference.java	(revision 338)
+++ branch/0.5/src/org/openstreetmap/josm/gui/preferences/TaggingPresetPreference.java	(revision 340)
@@ -74,5 +74,5 @@
 		taggingPresetSources.setVisibleRowCount(3);
 
-		taggingPresetSources.setToolTipText(tr("The sources (url or filename) of tagging preset definition files. See http://josm.eigenheimstrasse.de/wiki/TaggingPresets for help."));
+		taggingPresetSources.setToolTipText(tr("The sources (url or filename) of tagging preset definition files. See http://josm.openstreetmap.de/wiki/TaggingPresets for help."));
 		addAnno.setToolTipText(tr("Add a new tagging preset source to the list."));
 		deleteAnno.setToolTipText(tr("Delete the selected source from the list."));
Index: branch/0.5/src/org/openstreetmap/josm/tools/XmlObjectParser.java
===================================================================
--- branch/0.5/src/org/openstreetmap/josm/tools/XmlObjectParser.java	(revision 338)
+++ branch/0.5/src/org/openstreetmap/josm/tools/XmlObjectParser.java	(revision 340)
@@ -70,5 +70,5 @@
 				report();
 			else if (characters != null && !current.isEmpty()) {
-				setValue(qname, characters);
+				setValue(qname, characters.trim());
 				characters = "";
 			}
