Index: applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/MapillarySign.java
===================================================================
--- applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/MapillarySign.java	(revision 32972)
+++ applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/MapillarySign.java	(revision 32973)
@@ -30,7 +30,7 @@
       HashMap<String, MapillarySign> countryMap = new HashMap<>();
       try (
-              BufferedReader br = new BufferedReader(new InputStreamReader(
-                      MapillarySign.class.getResourceAsStream("/data/signs/" + country + ".cson")
-              ));
+        BufferedReader br = new BufferedReader(new InputStreamReader(
+          MapillarySign.class.getResourceAsStream("/data/signs/" + country + ".cson")
+        ));
       ) {
         String line = "";
@@ -58,10 +58,14 @@
       return countryMap.get(name);
     } else {
-      if (name.split("--").length >= 3 && countryMap.containsValue(new MapillarySign(name))) {
-        Optional<MapillarySign> p = countryMap.values().stream().filter(sign -> sign.toString().equals(name)).findFirst();
-        assert p.isPresent();
-        return p.get();
+      if (name.split("--").length >= 3) {
+        if (countryMap.containsValue(new MapillarySign(name))) {
+          Optional<MapillarySign> p = countryMap.values().stream().filter(sign -> sign.toString().equals(name)).findFirst();
+          assert p.isPresent();
+          return p.get();
+        } else {
+          return new MapillarySign(name);
+        }
       } else {
-        Main.warn("Sign '" + name + "' does not exist in the plugin database. Please contanct the developer to add it.");
+        Main.warn("Sign '" + name + "' does not exist in the plugin database. Please contact the developer to add it.");
         return null;
       }
@@ -70,5 +74,4 @@
 
   public MapillarySign(String fullName) {
-    Main.info(fullName);
     this.fullName = fullName;
     String[] parts = fullName.split("--");
Index: applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/io/download/MapillaryImageInfoDownloadThread.java
===================================================================
--- applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/io/download/MapillaryImageInfoDownloadThread.java	(revision 32972)
+++ applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/io/download/MapillaryImageInfoDownloadThread.java	(revision 32973)
@@ -47,5 +47,5 @@
     try (
       BufferedReader br = new BufferedReader(new InputStreamReader(
-          MapillaryURL.searchImageInfoURL(bounds, page, null).openStream(), "UTF-8"
+        MapillaryURL.searchImageInfoURL(bounds, page, null).openStream(), "UTF-8"
       ));
     ) {
@@ -64,8 +64,10 @@
                 && ((MapillaryImage) image).getKey().equals(key)
                 && ((MapillaryImage) image).getUser() == null
-            ) {
+              ) {
               ((MapillaryImage) image).setUser(data.getString("user"));
               ((MapillaryImage) image).setCapturedAt(data.getJsonNumber("captured_at").longValue());
-              ((MapillaryImage) image).setLocation(data.getString("location"));
+              if (!data.isNull("location")) {
+                ((MapillaryImage) image).setLocation(data.getString("location"));
+              }
             }
           }
