Index: /trunk/src/org/openstreetmap/josm/actions/AlignInLineAction.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/AlignInLineAction.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/actions/AlignInLineAction.java	(revision 7025)
@@ -52,5 +52,5 @@
      * InvalidSelection exception has to be raised when action can't be perform
      */
-    private class InvalidSelection extends Exception {
+    private static class InvalidSelection extends Exception {
 
         /**
Index: /trunk/src/org/openstreetmap/josm/actions/ExpertToggleAction.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/ExpertToggleAction.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/actions/ExpertToggleAction.java	(revision 7025)
@@ -29,27 +29,23 @@
 
     private static synchronized void fireExpertModeChanged(boolean isExpert) {
-        {
-            Iterator<WeakReference<ExpertModeChangeListener>> it = listeners.iterator();
-            while (it.hasNext()) {
-                WeakReference<ExpertModeChangeListener> wr = it.next();
-                ExpertModeChangeListener listener = wr.get();
-                if (listener == null) {
-                    it.remove();
-                    continue;
-                }
-                listener.expertChanged(isExpert);
+        Iterator<WeakReference<ExpertModeChangeListener>> it1 = listeners.iterator();
+        while (it1.hasNext()) {
+            WeakReference<ExpertModeChangeListener> wr = it1.next();
+            ExpertModeChangeListener listener = wr.get();
+            if (listener == null) {
+                it1.remove();
+                continue;
             }
+            listener.expertChanged(isExpert);
         }
-        {
-            Iterator<WeakReference<Component>> it = visibilityToggleListeners.iterator();
-            while (it.hasNext()) {
-                WeakReference<Component> wr = it.next();
-                Component c = wr.get();
-                if (c == null) {
-                    it.remove();
-                    continue;
-                }
-                c.setVisible(isExpert);
+        Iterator<WeakReference<Component>> it2 = visibilityToggleListeners.iterator();
+        while (it2.hasNext()) {
+            WeakReference<Component> wr = it2.next();
+            Component c = wr.get();
+            if (c == null) {
+                it2.remove();
+                continue;
             }
+            c.setVisible(isExpert);
         }
     }
Index: /trunk/src/org/openstreetmap/josm/actions/JoinAreasAction.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/JoinAreasAction.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/actions/JoinAreasAction.java	(revision 7025)
@@ -1172,9 +1172,9 @@
 
             for (RelationMember rm : r.getMembers()) {
-                if (rm.getRole().equalsIgnoreCase("outer")) {
+                if ("outer".equalsIgnoreCase(rm.getRole())) {
                     outerWays.add(rm.getWay());
                     hasKnownOuter |= selectedWays.contains(rm.getWay());
                 }
-                else if (rm.getRole().equalsIgnoreCase("inner")) {
+                else if ("inner".equalsIgnoreCase(rm.getRole())) {
                     innerWays.add(rm.getWay());
                 }
@@ -1328,5 +1328,5 @@
 
         for (RelationRole r : rels) {
-            if (r.rel.isMultipolygon() && r.role.equalsIgnoreCase("outer")) {
+            if (r.rel.isMultipolygon() && "outer".equalsIgnoreCase(r.role)) {
                 multiouters.add(r);
                 continue;
Index: /trunk/src/org/openstreetmap/josm/actions/JumpToAction.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/JumpToAction.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/actions/JumpToAction.java	(revision 7025)
@@ -149,5 +149,5 @@
                 for (String arg : args) {
                     int eq = arg.indexOf('=');
-                    if (eq == -1 || !arg.substring(0, eq).equalsIgnoreCase("zoom")) continue;
+                    if (eq == -1 || !"zoom".equalsIgnoreCase(arg.substring(0, eq))) continue;
     
                     zoomLvl = Integer.parseInt(arg.substring(eq + 1));
Index: /trunk/src/org/openstreetmap/josm/actions/MergeNodesAction.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/MergeNodesAction.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/actions/MergeNodesAction.java	(revision 7025)
@@ -104,5 +104,5 @@
 
         switch (Main.pref.getInteger("merge-nodes.mode", 0)) {
-        case 0: {
+        case 0:
             Node targetNode = candidates.get(size - 1);
             for (final Node n : candidates) { // pick last one
@@ -110,15 +110,13 @@
             }
             return targetNode;
-        }
-        case 1: {
-            double east = 0, north = 0;
+        case 1:
+            double east1 = 0, north1 = 0;
             for (final Node n : candidates) {
-                east += n.getEastNorth().east();
-                north += n.getEastNorth().north();
-            }
-
-            return new Node(new EastNorth(east / size, north / size));
-        }
-        case 2: {
+                east1 += n.getEastNorth().east();
+                north1 += n.getEastNorth().north();
+            }
+
+            return new Node(new EastNorth(east1 / size, north1 / size));
+        case 2:
             final double[] weights = new double[size];
 
@@ -133,15 +131,14 @@
             }
 
-            double east = 0, north = 0, weight = 0;
+            double east2 = 0, north2 = 0, weight = 0;
             for (int i = 0; i < size; i++) {
                 final EastNorth en = candidates.get(i).getEastNorth();
                 final double w = weights[i];
-                east += en.east() * w;
-                north += en.north() * w;
+                east2 += en.east() * w;
+                north2 += en.north() * w;
                 weight += w;
             }
 
-            return new Node(new EastNorth(east / weight, north / weight));
-        }
+            return new Node(new EastNorth(east2 / weight, north2 / weight));
         default:
             throw new RuntimeException("unacceptable merge-nodes.mode");
Index: /trunk/src/org/openstreetmap/josm/actions/mapmode/ParallelWays.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/actions/mapmode/ParallelWays.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/actions/mapmode/ParallelWays.java	(revision 7025)
@@ -89,16 +89,14 @@
 
         // Ugly method of ensuring that the offset isn't inverted. I'm sure there is a better and more elegant way, but I'm starting to get sleepy, so I do this for now.
-        {
-            Way refWay = ways.get(refWayIndex);
-            boolean refWayReversed = true;
-            for (int i = 0; i < sortedNodes.size() - 1; i++) {
-                if (sortedNodes.get(i) == refWay.firstNode() && sortedNodes.get(i + 1) == refWay.getNode(1)) {
-                    refWayReversed = false;
-                    break;
-                }
+        Way refWay = ways.get(refWayIndex);
+        boolean refWayReversed = true;
+        for (int i = 0; i < sortedNodes.size() - 1; i++) {
+            if (sortedNodes.get(i) == refWay.firstNode() && sortedNodes.get(i + 1) == refWay.getNode(1)) {
+                refWayReversed = false;
+                break;
             }
-            if (refWayReversed) {
-                Collections.reverse(sortedNodes); // need to keep the orientation of the reference way.
-            }
+        }
+        if (refWayReversed) {
+            Collections.reverse(sortedNodes); // need to keep the orientation of the reference way.
         }
 
Index: /trunk/src/org/openstreetmap/josm/data/imagery/GeorefImage.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/imagery/GeorefImage.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/data/imagery/GeorefImage.java	(revision 7025)
@@ -72,12 +72,9 @@
         switch (state) {
         case FAILED:
-        {
-            BufferedImage img = createImage();
-            layer.drawErrorTile(img);
-            this.image = img;
+            BufferedImage imgFailed = createImage();
+            layer.drawErrorTile(imgFailed);
+            this.image = imgFailed;
             break;
-        }
         case NOT_IN_CACHE:
-        {
             BufferedImage img = createImage();
             Graphics g = img.getGraphics();
@@ -93,5 +90,4 @@
             this.image = img;
             break;
-        }
         default:
             if (this.image != null) {
Index: /trunk/src/org/openstreetmap/josm/data/osm/QuadBuckets.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/osm/QuadBuckets.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/data/osm/QuadBuckets.java	(revision 7025)
@@ -614,30 +614,3 @@
         return ret;
     }
-
-    public void printTree() {
-        printTreeRecursive(root, 0);
-    }
-
-    private void printTreeRecursive(QBLevel<T> level, int indent) {
-        if (level == null) {
-            printIndented(indent, "<empty child>");
-            return;
-        }
-        printIndented(indent, level);
-        if (level.hasContent()) {
-            for (T o : level.content) {
-                printIndented(indent, o);
-            }
-        }
-        for (QBLevel<T> child : level.getChildren()) {
-            printTreeRecursive(child, indent + 2);
-        }
-    }
-
-    private void printIndented(int indent, Object msg) {
-        for (int i = 0; i < indent; i++) {
-            System.out.print(' ');
-        }
-        System.out.println(msg);
-    }
 }
Index: /trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2GridShiftFile.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2GridShiftFile.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2GridShiftFile.java	(revision 7025)
@@ -127,5 +127,5 @@
         in.read(b8);
         in.read(b8);
-        shiftType = new String(b8);
+        shiftType = new String(b8, Utils.UTF_8);
         in.read(b8);
         in.read(b8);
Index: /trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2SubGrid.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2SubGrid.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/data/projection/datum/NTV2SubGrid.java	(revision 7025)
@@ -186,8 +186,5 @@
      */
     private boolean isCoordWithin(double lon, double lat) {
-        if ((lon >= minLon) && (lon < maxLon) && (lat >= minLat) && (lat < maxLat))
-            return true;
-        else
-            return false;
+        return (lon >= minLon) && (lon < maxLon) && (lat >= minLat) && (lat < maxLat);
     }
 
Index: /trunk/src/org/openstreetmap/josm/data/validation/tests/DuplicateRelation.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/validation/tests/DuplicateRelation.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/data/validation/tests/DuplicateRelation.java	(revision 7025)
@@ -101,5 +101,5 @@
      * Class to store relation members
      */
-    private class RelationMembers {
+    private static class RelationMembers {
         /** List of member objects of the relation */
         private List<RelMember> members;
Index: /trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java	(revision 7025)
@@ -71,13 +71,13 @@
 
     /** The spell check key substitutions: the key should be substituted by the value */
-    protected static Map<String, String> spellCheckKeyData;
+    private static Map<String, String> spellCheckKeyData;
     /** The spell check preset values */
-    protected static MultiMap<String, String> presetsValueData;
+    private static MultiMap<String, String> presetsValueData;
     /** The TagChecker data */
-    protected static final List<CheckerData> checkerData = new ArrayList<>();
-    protected static final List<String> ignoreDataStartsWith = new ArrayList<>();
-    protected static final List<String> ignoreDataEquals = new ArrayList<>();
-    protected static final List<String> ignoreDataEndsWith = new ArrayList<>();
-    protected static final List<IgnoreKeyPair> ignoreDataKeyPair = new ArrayList<>();
+    private static final List<CheckerData> checkerData = new ArrayList<>();
+    private static final List<String> ignoreDataStartsWith = new ArrayList<>();
+    private static final List<String> ignoreDataEquals = new ArrayList<>();
+    private static final List<String> ignoreDataEndsWith = new ArrayList<>();
+    private static final List<IgnoreKeyPair> ignoreDataKeyPair = new ArrayList<>();
 
     /** The preferences prefix */
Index: /trunk/src/org/openstreetmap/josm/data/validation/tests/UnclosedWays.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/validation/tests/UnclosedWays.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/data/validation/tests/UnclosedWays.java	(revision 7025)
@@ -57,7 +57,6 @@
          * @param engMessage The English message
          */
-        @SuppressWarnings("unchecked")
         public UnclosedWaysCheck(int code, String key, String engMessage) {
-            this(code, key, engMessage, Collections.EMPTY_LIST);
+            this(code, key, engMessage, Collections.<String>emptyList());
         }
         
Index: /trunk/src/org/openstreetmap/josm/data/validation/util/Entities.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/validation/util/Entities.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/data/validation/util/Entities.java	(revision 7025)
@@ -368,11 +368,9 @@
                                 switch (isHexChar) {
                                     case 'X' :
-                                    case 'x' : {
+                                    case 'x' :
                                         entityValue = Integer.parseInt(entityContent.substring(2), 16);
                                         break;
-                                    }
-                                    default : {
+                                    default :
                                         entityValue = Integer.parseInt(entityContent.substring(1), 10);
-                                    }
                                 }
                                 if (entityValue > 0xFFFF) {
Index: /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesDialog.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesDialog.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesDialog.java	(revision 7025)
@@ -14,6 +14,8 @@
 import java.awt.event.MouseAdapter;
 import java.awt.event.MouseEvent;
+import java.io.UnsupportedEncodingException;
 import java.net.HttpURLConnection;
 import java.net.URI;
+import java.net.URISyntaxException;
 import java.net.URLEncoder;
 import java.util.ArrayList;
@@ -1142,5 +1144,5 @@
                     }
                 });
-            } catch (Exception e1) {
+            } catch (URISyntaxException | UnsupportedEncodingException e1) {
                 Main.error(e1);
             }
Index: /trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserDialogManager.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserDialogManager.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserDialogManager.java	(revision 7025)
@@ -184,5 +184,4 @@
                     BugReportExceptionHandler.handleException(e);
                 }
-
             }
         };
@@ -200,9 +199,7 @@
                 // reload if the history is not in the cache yet
                 return true;
-            else if (!p.isNew() && h.getByVersion(p.getUniqueId()) == null)
+            else
                 // reload if the history object of the selected object is not in the cache yet
-                return true;
-            else
-                return false;
+                return (!p.isNew() && h.getByVersion(p.getUniqueId()) == null);
         }
     };
@@ -215,4 +212,3 @@
         }
     };
-
 }
Index: /trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserModel.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserModel.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserModel.java	(revision 7025)
@@ -427,19 +427,17 @@
             case 2:
                 return isCurrentPointInTime(row);
-            case 3: {
-                HistoryOsmPrimitive p = getPrimitive(row);
-                if (p != null && p.getTimestamp() != null)
-                    return DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT).format(p.getTimestamp());
+            case 3:
+                HistoryOsmPrimitive p3 = getPrimitive(row);
+                if (p3 != null && p3.getTimestamp() != null)
+                    return DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT).format(p3.getTimestamp());
                 return null;
-            }
-            case 4: {
-                HistoryOsmPrimitive p = getPrimitive(row);
-                if (p != null) {
-                    User user = p.getUser();
+            case 4:
+                HistoryOsmPrimitive p4 = getPrimitive(row);
+                if (p4 != null) {
+                    User user = p4.getUser();
                     if (user != null)
                         return user.getName();
                 }
                 return null;
-            }
             }
             return null;
Index: /trunk/src/org/openstreetmap/josm/gui/io/UploadPrimitivesTask.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/io/UploadPrimitivesTask.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/gui/io/UploadPrimitivesTask.java	(revision 7025)
@@ -297,5 +297,5 @@
                 OsmApi.getOsmApi().closeChangeset(changeset, progressMonitor.createSubTaskMonitor(0, false));
             }
-        } catch (Exception e) {
+        } catch (OsmTransferException e) {
             if (uploadCanceled) {
                 Main.info(tr("Ignoring caught exception because upload is canceled. Exception is: {0}", e.toString()));
Index: /trunk/src/org/openstreetmap/josm/gui/layer/geoimage/CorrelateGpxWithImages.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/layer/geoimage/CorrelateGpxWithImages.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/gui/layer/geoimage/CorrelateGpxWithImages.java	(revision 7025)
@@ -704,5 +704,4 @@
                     break;
                 case CANCEL:
-                {
                     if (yLayer != null) {
                         for (ImageEntry ie : yLayer.data) {
@@ -712,10 +711,8 @@
                     }
                     break;
-                }
                 case AGAIN:
                     actionPerformed(null);
                     break;
                 case DONE:
-                {
                     Main.pref.put("geoimage.timezone", formatTimezone(timezone));
                     Main.pref.put("geoimage.delta", Long.toString(delta * 1000));
@@ -751,5 +748,4 @@
 
                     break;
-                }
                 default:
                     throw new IllegalStateException();
Index: /trunk/src/org/openstreetmap/josm/gui/mappaint/LineElemStyle.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/mappaint/LineElemStyle.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/gui/mappaint/LineElemStyle.java	(revision 7025)
@@ -99,11 +99,7 @@
         switch (type) {
             case NORMAL:
-            {
-                Float widthOnDefault = getWidth(c_def, WIDTH, null);
-                width = getWidth(c, WIDTH, widthOnDefault);
-                break;
-            }
+                width = getWidth(c, WIDTH, getWidth(c_def, WIDTH, null));
+                break;
             case CASING:
-            {
                 Float casingWidth = c.get(type.prefix + WIDTH, null, Float.class, true);
                 if (casingWidth == null) {
@@ -115,6 +111,5 @@
                 if (casingWidth == null)
                     return null;
-                Float widthOnDefault = getWidth(c_def, WIDTH, null);
-                width = getWidth(c, WIDTH, widthOnDefault);
+                width = getWidth(c, WIDTH, getWidth(c_def, WIDTH, null));
                 if (width == null) {
                     width = 0f;
@@ -122,5 +117,4 @@
                 width += 2 * casingWidth;
                 break;
-            }
             case LEFT_CASING:
             case RIGHT_CASING:
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/SourceEditor.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/SourceEditor.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/SourceEditor.java	(revision 7025)
@@ -1340,5 +1340,5 @@
                     }
                 }
-            } catch (Exception e) {
+            } catch (IOException e) {
                 if (canceled)
                     // ignore the exception and return
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/projection/CodeProjectionChoice.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/projection/CodeProjectionChoice.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/projection/CodeProjectionChoice.java	(revision 7025)
@@ -67,5 +67,5 @@
          * Comparator that compares the number part of the code numerically.
          */
-        private class CodeComparator implements Comparator<String> {
+        private static class CodeComparator implements Comparator<String> {
             final Pattern codePattern = Pattern.compile("([a-zA-Z]+):(\\d+)");
             @Override
Index: /trunk/src/org/openstreetmap/josm/gui/preferences/projection/PuwgProjectionChoice.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/preferences/projection/PuwgProjectionChoice.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/gui/preferences/projection/PuwgProjectionChoice.java	(revision 7025)
@@ -10,5 +10,5 @@
 public class PuwgProjectionChoice extends ListProjectionChoice {
 
-    public static final String[] CODES = {
+    private static final String[] CODES = {
         "EPSG:2180",
         "EPSG:2176",
@@ -17,5 +17,6 @@
         "EPSG:2179"
     };
-    public static final String[] NAMES = {
+
+    private static final String[] NAMES = {
         tr("PUWG 1992 (Poland)"),
         tr("PUWG 2000 Zone {0} (Poland)", 5),
Index: /trunk/src/org/openstreetmap/josm/gui/widgets/MultiSplitLayout.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/widgets/MultiSplitLayout.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/gui/widgets/MultiSplitLayout.java	(revision 7025)
@@ -1156,5 +1156,5 @@
             throwParseException(st, "expected '=' after " + name);
         }
-        if (name.equalsIgnoreCase("WEIGHT")) {
+        if ("WEIGHT".equalsIgnoreCase(name)) {
             if (st.nextToken() == StreamTokenizer.TT_NUMBER) {
                 node.setWeight(st.nval);
@@ -1164,5 +1164,5 @@
             }
         }
-        else if (name.equalsIgnoreCase("NAME")) {
+        else if ("NAME".equalsIgnoreCase(name)) {
             if (st.nextToken() == StreamTokenizer.TT_WORD) {
                 if (node instanceof Leaf) {
@@ -1218,5 +1218,5 @@
             }
             else if (token == StreamTokenizer.TT_WORD) {
-                if (st.sval.equalsIgnoreCase("WEIGHT")) {
+                if ("WEIGHT".equalsIgnoreCase(st.sval)) {
                     parseAttribute(st.sval, st, parent);
                 }
Index: /trunk/src/org/openstreetmap/josm/io/DefaultProxySelector.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/io/DefaultProxySelector.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/io/DefaultProxySelector.java	(revision 7025)
@@ -29,4 +29,7 @@
 
     private static final List<Proxy> NO_PROXY_LIST = Collections.singletonList(Proxy.NO_PROXY);
+    
+    private static final String IPV4_LOOPBACK = "127.0.0.1";
+    private static final String IPV6_LOOPBACK = "::1";
 
     /**
@@ -142,5 +145,5 @@
         proxyExceptions = new HashSet<>(
             Main.pref.getCollection(ProxyPreferencesPanel.PROXY_EXCEPTIONS,
-                    Arrays.asList(new String[]{"localhost", "127.0.0.1"}))
+                    Arrays.asList(new String[]{"localhost", IPV4_LOOPBACK, IPV6_LOOPBACK}))
         );
     }
Index: /trunk/src/org/openstreetmap/josm/io/OsmChangeReader.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/io/OsmChangeReader.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/io/OsmChangeReader.java	(revision 7025)
@@ -22,5 +22,5 @@
      * List of possible actions.
      */
-    public static final String[] ACTIONS = {"create", "modify", "delete"};
+    private static final String[] ACTIONS = {"create", "modify", "delete"};
 
     /**
Index: /trunk/src/org/openstreetmap/josm/io/OsmReader.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/io/OsmReader.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/io/OsmReader.java	(revision 7025)
@@ -55,5 +55,5 @@
 
     /** Used by plugins to register themselves as data postprocessors. */
-    public static List<OsmServerReadPostprocessor> postprocessors;
+    private static List<OsmServerReadPostprocessor> postprocessors;
 
     /** register a new postprocessor */
Index: /trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java	(revision 7025)
@@ -185,5 +185,5 @@
      * List of unmaintained plugins. Not really up-to-date as the vast majority of plugins are not really maintained after a few months, sadly...
      */
-    public static final String [] UNMAINTAINED_PLUGINS = new String[] {"gpsbabelgui", "Intersect_way"};
+    private static final String [] UNMAINTAINED_PLUGINS = new String[] {"gpsbabelgui", "Intersect_way"};
 
     /**
Index: /trunk/src/org/openstreetmap/josm/tools/AudioPlayer.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/AudioPlayer.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/tools/AudioPlayer.java	(revision 7025)
@@ -11,5 +11,7 @@
 import javax.sound.sampled.AudioSystem;
 import javax.sound.sampled.DataLine;
+import javax.sound.sampled.LineUnavailableException;
 import javax.sound.sampled.SourceDataLine;
+import javax.sound.sampled.UnsupportedAudioFileException;
 import javax.swing.JOptionPane;
 
@@ -339,5 +341,5 @@
                     }
                     command.ok(stateChange);
-                } catch (Exception startPlayingException) {
+                } catch (LineUnavailableException | IOException | UnsupportedAudioFileException startPlayingException) {
                     command.failed(startPlayingException); // sets state
                 }
Index: /trunk/src/org/openstreetmap/josm/tools/AudioUtil.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/AudioUtil.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/tools/AudioUtil.java	(revision 7025)
@@ -3,4 +3,6 @@
 
 import java.io.File;
+import java.io.IOException;
+import java.net.MalformedURLException;
 import java.net.URL;
 
@@ -8,4 +10,5 @@
 import javax.sound.sampled.AudioInputStream;
 import javax.sound.sampled.AudioSystem;
+import javax.sound.sampled.UnsupportedAudioFileException;
 
 import org.openstreetmap.josm.Main;
@@ -40,5 +43,5 @@
             double calibration = Main.pref.getDouble("audio.calibration", 1.0 /* default, ratio */);
             return naturalLength / calibration;
-        } catch (Exception e) {
+        } catch (UnsupportedAudioFileException | IOException e) {
             return 0.0;
         }
Index: /trunk/src/org/openstreetmap/josm/tools/ImageProvider.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/tools/ImageProvider.java	(revision 7024)
+++ /trunk/src/org/openstreetmap/josm/tools/ImageProvider.java	(revision 7025)
@@ -770,5 +770,5 @@
                 @Override
                 public void startElement(String uri, String localName, String qName, Attributes atts) throws SAXException {
-                    if (localName.equalsIgnoreCase("img")) {
+                    if ("img".equalsIgnoreCase(localName)) {
                         String val = atts.getValue("src");
                         if (val.endsWith(fn))
Index: /trunk/test/functional/org/openstreetmap/josm/gui/history/HistoryBrowserTest.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/gui/history/HistoryBrowserTest.java	(revision 7024)
+++ /trunk/test/functional/org/openstreetmap/josm/gui/history/HistoryBrowserTest.java	(revision 7025)
@@ -6,4 +6,5 @@
 import java.awt.BorderLayout;
 import java.io.File;
+import java.io.IOException;
 import java.io.InputStream;
 import java.text.MessageFormat;
@@ -44,5 +45,5 @@
                 is.close();
             }
-        } catch(Exception e){
+        } catch(IOException e){
             logger.log(Level.SEVERE, MessageFormat.format("failed to load property file ''{0}''", "test-functional-env.properties"));
             fail(MessageFormat.format("failed to load property file ''{0}''", "test-functional-env.properties"));
Index: /trunk/test/functional/org/openstreetmap/josm/io/MultiFetchServerObjectReaderTest.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/io/MultiFetchServerObjectReaderTest.java	(revision 7024)
+++ /trunk/test/functional/org/openstreetmap/josm/io/MultiFetchServerObjectReaderTest.java	(revision 7025)
@@ -111,6 +111,6 @@
     }
 
-    static public DataSet testDataSet;
-    static public Properties testProperties;
+    private static DataSet testDataSet;
+    private static Properties testProperties;
 
     /**
@@ -120,5 +120,5 @@
      * @throws OsmTransferException
      */
-    static public void createDataSetOnServer(DataSet ds) throws OsmTransferException {
+    public static void createDataSetOnServer(DataSet ds) throws OsmTransferException {
         logger.info("creating data set on the server ...");
         ArrayList<OsmPrimitive> primitives = new ArrayList<>();
@@ -147,5 +147,5 @@
                 is.close();
             }
-        } catch(Exception e){
+        } catch(IOException e){
             logger.log(Level.SEVERE, MessageFormat.format("failed to load property file ''{0}''", "test-functional-env.properties"));
             fail(MessageFormat.format("failed to load property file ''{0}''", "test-functional-env.properties"));
Index: /trunk/test/functional/org/openstreetmap/josm/io/OsmServerBackreferenceReaderTest.java
===================================================================
--- /trunk/test/functional/org/openstreetmap/josm/io/OsmServerBackreferenceReaderTest.java	(revision 7024)
+++ /trunk/test/functional/org/openstreetmap/josm/io/OsmServerBackreferenceReaderTest.java	(revision 7025)
@@ -154,5 +154,5 @@
                 is.close();
             }
-        } catch(Exception e){
+        } catch(IOException e){
             logger.log(Level.SEVERE, MessageFormat.format("failed to load property file ''{0}''", "test-functional-env.properties"));
             fail(MessageFormat.format("failed to load property file ''{0}''", "test-functional-env.properties"));
