Index: trunk/src/org/openstreetmap/josm/actions/AddImageryLayerAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/AddImageryLayerAction.java	(revision 4714)
+++ trunk/src/org/openstreetmap/josm/actions/AddImageryLayerAction.java	(revision 4715)
@@ -28,6 +28,9 @@
         try {
             if (info.getIcon() != null) {
-                ImageIcon i = new ImageRequest().setName(info.getIcon()).setMaxHeight(MAX_ICON_SIZE).setMaxWidth(MAX_ICON_SIZE).get();
-                putValue(Action.SMALL_ICON, i);
+                ImageIcon i = new ImageRequest().setOptional(true).setName(info.getIcon()).
+                        setMaxHeight(MAX_ICON_SIZE).setMaxWidth(MAX_ICON_SIZE).get();
+                if (i != null) {
+                    putValue(Action.SMALL_ICON, i);
+                }
             }
         } catch (Exception ex) {
Index: trunk/src/org/openstreetmap/josm/tools/ImageRequest.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/ImageRequest.java	(revision 4714)
+++ trunk/src/org/openstreetmap/josm/tools/ImageRequest.java	(revision 4715)
@@ -93,6 +93,8 @@
                 String ext = name.indexOf('.') != -1 ? "" : ".???";
                 throw new RuntimeException(tr("Fatal: failed to locate image ''{0}''. This is a serious configuration problem. JOSM will stop working.", name + ext));
-            } else
+            } else {
+                System.out.println(tr("Failed to locate image ''{0}''", name));
                 return null;
+            }
         }
         if (maxWidth != -1 || maxHeight != -1)
