Index: applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/utils/ImageUtil.java
===================================================================
--- applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/utils/ImageUtil.java	(revision 32641)
+++ applications/editors/josm/plugins/mapillary/src/org/openstreetmap/josm/plugins/mapillary/utils/ImageUtil.java	(revision 32642)
@@ -146,9 +146,12 @@
       try (FileInputStream fis = new FileInputStream(f)) {
         int numBytes = fis.read(magic);
-        return Arrays.equals(JFIF_MAGIC, Arrays.copyOf(magic, Math.min(numBytes, JFIF_MAGIC.length)))
-            || Arrays.equals(PNG_MAGIC, Arrays.copyOf(magic, Math.min(numBytes, PNG_MAGIC.length)));
+        return numBytes >= 0 && (
+          Arrays.equals(JFIF_MAGIC, Arrays.copyOf(magic, Math.min(numBytes, JFIF_MAGIC.length)))
+          || Arrays.equals(PNG_MAGIC, Arrays.copyOf(magic, Math.min(numBytes, PNG_MAGIC.length)))
+        );
       } catch (FileNotFoundException e) {
         return false;
       } catch (IOException e) {
+        Main.warn("IO-exception while reading file "+f.getAbsolutePath());
         return false;
       }
Index: applications/editors/josm/plugins/mapillary/test/unit/org/openstreetmap/josm/plugins/mapillary/utils/ImageUtilsTest.java
===================================================================
--- applications/editors/josm/plugins/mapillary/test/unit/org/openstreetmap/josm/plugins/mapillary/utils/ImageUtilsTest.java	(revision 32641)
+++ applications/editors/josm/plugins/mapillary/test/unit/org/openstreetmap/josm/plugins/mapillary/utils/ImageUtilsTest.java	(revision 32642)
@@ -3,4 +3,5 @@
 
 import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
 import static org.junit.Assert.assertTrue;
 
@@ -91,3 +92,9 @@
   }
 
+  @Test
+  public void testFileFilterAgainstEmptyFile() throws URISyntaxException {
+    File f = new File(ImageUtil.class.getResource("/zeroByteFile").toURI());
+    assertFalse(ImageUtil.IMAGE_FILE_FILTER.accept(f));
+  }
+
 }
