Index: /trunk/src/org/openstreetmap/josm/data/projection/Projections.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/projection/Projections.java	(revision 9126)
+++ /trunk/src/org/openstreetmap/josm/data/projection/Projections.java	(revision 9127)
@@ -142,8 +142,13 @@
         nadgrids.put("ntf_r93_b.gsb", NTV2GridShiftFileWrapper.ntf_rgf93);
 
+        List<ProjectionDefinition> pds;
         try {
-            inits = loadProjectionDefinitions("resource://data/projection/epsg");
+            pds = loadProjectionDefinitions("resource://data/projection/epsg");
         } catch (IOException ex) {
             throw new RuntimeException(ex);
+        }
+        inits = new LinkedHashMap<>();
+        for (ProjectionDefinition pd : pds) {
+            inits.put(pd.code, pd);
         }
     }
@@ -203,5 +208,5 @@
      * @throws java.io.IOException
      */
-    public static Map<String, ProjectionDefinition> loadProjectionDefinitions(String path) throws IOException {
+    public static List<ProjectionDefinition> loadProjectionDefinitions(String path) throws IOException {
         try (
             InputStream in = new CachedFile(path).getInputStream();
@@ -221,6 +226,6 @@
      * @throws java.io.IOException
      */
-    public static Map<String, ProjectionDefinition> loadProjectionDefinitions(BufferedReader r) throws IOException {
-        Map<String, ProjectionDefinition> result = new LinkedHashMap<>();
+    public static List<ProjectionDefinition> loadProjectionDefinitions(BufferedReader r) throws IOException {
+        List<ProjectionDefinition> result = new ArrayList<>();
         Pattern epsgPattern = Pattern.compile("<(\\d+)>(.*)<>");
         String line, lastline = "";
@@ -234,5 +239,5 @@
                     String code = "EPSG:" + m.group(1);
                     String definition = m.group(2).trim();
-                    result.put(code, new ProjectionDefinition(code, name, definition));
+                    result.add(new ProjectionDefinition(code, name, definition));
                 } else {
                     Main.warn("Failed to parse line from the EPSG projection definition: "+line);
