Index: trunk/src/org/openstreetmap/josm/actions/AboutAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/AboutAction.java	(revision 2369)
+++ trunk/src/org/openstreetmap/josm/actions/AboutAction.java	(revision 2370)
@@ -35,5 +35,5 @@
  */
 public class AboutAction extends JosmAction {
-  
+
     public AboutAction() {
         super(tr("About"), "about", tr("Display the about screen."), Shortcut.registerShortcut("system:about", tr("About"), KeyEvent.VK_F1, Shortcut.GROUP_DIRECT, Shortcut.SHIFT_DEFAULT), true);
@@ -42,5 +42,5 @@
     public void actionPerformed(ActionEvent e) {
         JTabbedPane about = new JTabbedPane();
-        
+
         JTextArea readme = new JTextArea();
         readme.setEditable(false);
@@ -54,5 +54,5 @@
         license.setEditable(false);
         license.setText(Version.loadResourceFile(Main.class.getResource("/LICENSE")));
-        
+
         Version version = Version.getInstance();
 
Index: trunk/src/org/openstreetmap/josm/data/Preferences.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/Preferences.java	(revision 2369)
+++ trunk/src/org/openstreetmap/josm/data/Preferences.java	(revision 2370)
@@ -32,5 +32,4 @@
 import org.openstreetmap.josm.gui.preferences.ProxyPreferences;
 import org.openstreetmap.josm.tools.ColorHelper;
-import org.openstreetmap.josm.tools.LanguageInfo;
 
 /**
@@ -62,23 +61,23 @@
         private String name;
         private Bounds area;
-        
-        public Bookmark() {    
+
+        public Bookmark() {
             area = null;
             name = null;
         }
-        
+
         public Bookmark(Bounds area) {
-            this.area = area;           
-        }
-        
+            this.area = area;
+        }
+
         @Override public String toString() {
             return name;
         }
-                
+
         public int compareTo(Bookmark b) {
             return name.toLowerCase().compareTo(b.name.toLowerCase());
         }
-        
-        public Bounds getArea() { 
+
+        public Bounds getArea() {
             return area;
         }
@@ -504,5 +503,5 @@
                 } catch(NumberFormatException e) {
                     System.err.println(tr("Error: Illegal double value ''{0}'' on line ''{1}'' in bookmark file ''{2}''",m.group(i+2),line, bookmarkFile.toString()));
-                    continue;                    
+                    continue;
                 }
             }
@@ -681,8 +680,8 @@
         return put(key, s);
     }
-    
+
     /**
      * Updates system properties with the current values in the preferences.
-     * 
+     *
      */
     public void updateSystemProperties() {
@@ -696,14 +695,7 @@
                 sysProp.put("proxyPassword", get(ProxyPreferences.PROXY_PASS));
             }
-         
-        }
-        int v = Version.getInstance().getVersion();
-        String s = (v == Version.JOSM_UNKNOWN_VERSION) ? "UNKNOWN" : Integer.toString(v);   
-        if (! Version.getInstance().isLocalBuild() && v != Version.JOSM_UNKNOWN_VERSION) {
-            s += " SVN";
-        } else if (Version.getInstance().isLocalBuild() && v != Version.JOSM_UNKNOWN_VERSION) {
-            s += " Local";
-        }
-        sysProp.put("http.agent", "JOSM/1.5 ("+ s+" "+LanguageInfo.getJOSMLocaleCode()+")");
+
+        }
+        sysProp.put("http.agent", Version.getInstance().getAgentString());
         System.setProperties(sysProp);
     }
Index: trunk/src/org/openstreetmap/josm/data/Version.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/Version.java	(revision 2369)
+++ trunk/src/org/openstreetmap/josm/data/Version.java	(revision 2370)
@@ -14,8 +14,9 @@
 
 import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.tools.LanguageInfo;
 
 /**
  * Provides basic information about the currently used JOSM build.
- * 
+ *
  */
 public class Version {
@@ -23,12 +24,12 @@
     static public final int JOSM_UNKNOWN_VERSION = 0;
 
-    /** the unique instance */ 
+    /** the unique instance */
     private static Version instance;
-    
+
     /**
      * Load the specified resource as string.
-     * 
+     *
      * @param resource the resource url to load
-     * @return  the content of the resource file; null, if an error occurred 
+     * @return  the content of the resource file; null, if an error occurred
      */
     static public String loadResourceFile(URL resource) {
@@ -48,11 +49,11 @@
         return s;
     }
-    
-    /**
-     * Replies the unique instance of the version information 
-     * 
+
+    /**
+     * Replies the unique instance of the version information
+     *
      * @return the unique instance of the version information
      */
-    
+
     static public Version getInstance() {
         if (instance == null) {
@@ -60,12 +61,12 @@
             instance.init();
         }
-        return instance;            
-    }
-    
+        return instance;
+    }
+
     private int version;
     private String revision;
     private String time;
     private boolean isLocalBuild;
-    
+
     protected HashMap<String, String> parseManifestStyleFormattedString(String content) {
         HashMap<String, String> properties = new HashMap<String, String>();
@@ -82,9 +83,9 @@
         return properties;
     }
-    
-    /**
-     * Initializes the version infos from the revision resource file 
-     * 
-     * @param revisionInfo the revision info loaded from a revision resource file 
+
+    /**
+     * Initializes the version infos from the revision resource file
+     *
+     * @param revisionInfo the revision info loaded from a revision resource file
      */
     protected void initFromRevisionInfo(String revisionInfo) {
@@ -93,7 +94,7 @@
             this.version = JOSM_UNKNOWN_VERSION;
             this.time = null;
-            return;        
-        }
-        
+            return;
+        }
+
         HashMap<String, String> properties = parseManifestStyleFormattedString(revisionInfo);
         String value = properties.get("Revision");
@@ -109,6 +110,6 @@
             version = JOSM_UNKNOWN_VERSION;
         }
-                
-        // the last changed data 
+
+        // the last changed data
         //
         time = properties.get("Last Changed Date");
@@ -116,13 +117,13 @@
             time = properties.get("Build-Date");
         }
-        
+
         // is this a local build ?
         //
-        isLocalBuild = false; 
+        isLocalBuild = false;
         value = properties.get("Is-Local-Build");
         if (value != null && value.trim().toLowerCase().equals("true"))  {
             isLocalBuild = true;
         }
-        
+
         // the revision info
         //
@@ -132,7 +133,7 @@
         }
         revision = sb.toString();
-    }    
-       
-    public void init() {    
+    }
+
+    public void init() {
         URL u = Main.class.getResource("/REVISION");
         if (u == null) {
@@ -145,18 +146,18 @@
         System.out.println(revision);
     }
-   
-    /**
-     * Replies the version string. Either the SVN revision "1234" (as string) or the 
+
+    /**
+     * Replies the version string. Either the SVN revision "1234" (as string) or the
      * the I18n equivalent of "UNKNOWN".
-     * 
-     * @return the JOSM version 
+     *
+     * @return the JOSM version
      */
     public String getVersionString() {
         return  version == 0 ? tr("UNKNOWN") : Integer.toString(version);
     }
-    
+
     /**
      * Replies a text with the release attributes
-     *  
+     *
      * @return a text with the release attributes
      */
@@ -166,14 +167,14 @@
 
     /**
-     * Replies the build date as string 
-     * 
-     * @return the build date as string 
+     * Replies the build date as string
+     *
+     * @return the build date as string
      */
     public String getTime() {
         return time;
     }
-    
-    /**
-     * Replies the JOSM version. Replies {@see #JOSM_UNKNOWN_VERSION} if the version isn't known. 
+
+    /**
+     * Replies the JOSM version. Replies {@see #JOSM_UNKNOWN_VERSION} if the version isn't known.
      * @return the JOSM version
      */
@@ -184,5 +185,5 @@
     /**
      * Replies true if this is a local build, i.e. an inofficial development build.
-     * 
+     *
      * @return true if this is a local build, i.e. an inofficial development build.
      */
@@ -190,3 +191,12 @@
         return isLocalBuild;
     }
+
+    public String getAgentString() {
+        int v = getVersion();
+        String s = (v == JOSM_UNKNOWN_VERSION) ? "UNKNOWN" : Integer.toString(v);
+        if (isLocalBuild() && v != JOSM_UNKNOWN_VERSION) {
+            s += " SVN";
+        }
+        return "JOSM/1.5 ("+ s+" "+LanguageInfo.getJOSMLocaleCode()+")";
+    }
 }
