Index: /trunk/test/unit/org/openstreetmap/josm/gui/preferences/imagery/ImageryPreferenceTestIT.java
===================================================================
--- /trunk/test/unit/org/openstreetmap/josm/gui/preferences/imagery/ImageryPreferenceTestIT.java	(revision 14538)
+++ /trunk/test/unit/org/openstreetmap/josm/gui/preferences/imagery/ImageryPreferenceTestIT.java	(revision 14539)
@@ -12,4 +12,5 @@
 import java.util.List;
 import java.util.Map;
+import java.util.Optional;
 import java.util.TreeMap;
 import java.util.concurrent.TimeUnit;
@@ -89,8 +90,8 @@
     }
 
-    private byte[] checkUrl(ImageryInfo info, String url) {
+    private Optional<byte[]> checkUrl(ImageryInfo info, String url) {
         if (url != null && !url.isEmpty()) {
             if (workingURLs.containsKey(url)) {
-                return workingURLs.get(url);
+                return Optional.of(workingURLs.get(url));
             }
             try {
@@ -110,5 +111,5 @@
                         workingURLs.put(url, data);
                     }
-                    return data;
+                    return Optional.of(data);
                 } finally {
                     response.disconnect();
@@ -118,11 +119,9 @@
             }
         }
-        return new byte[0];
+        return Optional.empty();
     }
 
     private void checkLinkUrl(ImageryInfo info, String url) {
-        if (url != null && checkUrl(info, url).length == 0) {
-            addError(info, url + " -> returned empty contents");
-        }
+        checkUrl(info, url).filter(x -> x.length == 0).ifPresent(x -> addError(info, url + " -> returned empty contents"));
     }
 
@@ -133,13 +132,14 @@
             try {
                 String url = tileSource.getTileUrl(zoom, xy.getXIndex(), xy.getYIndex());
-                byte[] data = checkUrl(info, url);
-                try (ByteArrayInputStream bais = new ByteArrayInputStream(data)) {
-                    if (ImageIO.read(bais) == null) {
-                        addImageError(info, url, data, "did not return an image");
+                checkUrl(info, url).ifPresent(data -> {
+                    try (ByteArrayInputStream bais = new ByteArrayInputStream(data)) {
+                        if (ImageIO.read(bais) == null) {
+                            addImageError(info, url, data, "did not return an image");
+                        }
+                    } catch (IOException e) {
+                        addImageError(info, url, data, e.toString());
+                        Logging.trace(e);
                     }
-                } catch (IOException e) {
-                    addImageError(info, url, data, e.toString());
-                    Logging.trace(e);
-                }
+                });
                 return;
             } catch (IOException e) {
