Index: trunk/src/org/openstreetmap/josm/gui/layer/geoimage/ImageEntry.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/geoimage/ImageEntry.java	(revision 9326)
+++ trunk/src/org/openstreetmap/josm/gui/layer/geoimage/ImageEntry.java	(revision 9329)
@@ -12,4 +12,10 @@
 import java.util.TimeZone;
 
+import org.openstreetmap.josm.Main;
+import org.openstreetmap.josm.data.SystemOfMeasurement;
+import org.openstreetmap.josm.data.coor.CachedLatLon;
+import org.openstreetmap.josm.data.coor.LatLon;
+import org.openstreetmap.josm.tools.ExifReader;
+
 import com.drew.imaging.jpeg.JpegMetadataReader;
 import com.drew.lang.CompoundException;
@@ -19,9 +25,4 @@
 import com.drew.metadata.exif.ExifIFD0Directory;
 import com.drew.metadata.exif.GpsDirectory;
-import org.openstreetmap.josm.Main;
-import org.openstreetmap.josm.data.SystemOfMeasurement;
-import org.openstreetmap.josm.data.coor.CachedLatLon;
-import org.openstreetmap.josm.data.coor.LatLon;
-import org.openstreetmap.josm.tools.ExifReader;
 
 /**
@@ -432,4 +433,5 @@
      *
      * If successful, fills in the LatLon, speed, elevation, image direction, and other attributes
+     * @since 9270
      */
     public void extractExif() {
@@ -448,4 +450,5 @@
             dirGps = metadata.getFirstDirectoryOfType(GpsDirectory.class);
         } catch (CompoundException | IOException p) {
+            Main.warn(p);
             setExifCoor(null);
             setPos(null);
@@ -459,5 +462,15 @@
             }
         } catch (MetadataException ex) {
-            Main.debug(ex.getMessage());
+            if (Main.isDebugEnabled()) {
+                Main.debug(ex.getMessage());
+            }
+        }
+
+        // Changed to silently cope with no time info in exif. One case
+        // of person having time that couldn't be parsed, but valid GPS info
+        try {
+            setExifTime(ExifReader.readTime(file));
+        } catch (ParseException ex) {
+            setExifTime(null);
         }
 
@@ -481,5 +494,7 @@
             setSpeed(speed);
         } catch (Exception ex) {
-            Main.debug(ex.getMessage());
+            if (Main.isDebugEnabled()) {
+                Main.debug(ex.getMessage());
+            }
         }
 
@@ -492,5 +507,7 @@
             setElevation(ele);
         } catch (MetadataException ex) {
-            Main.debug(ex.getMessage());
+            if (Main.isDebugEnabled()) {
+                Main.debug(ex.getMessage());
+            }
         }
 
@@ -512,13 +529,7 @@
             }
         } catch (Exception ex) { // (CompoundException and other exceptions, e.g. #5271)
-            Main.debug(ex.getMessage());
-        }
-
-        // Changed to silently cope with no time info in exif. One case
-        // of person having time that couldn't be parsed, but valid GPS info
-        try {
-            setExifTime(ExifReader.readTime(file));
-        } catch (ParseException ex) {
-            setExifTime(null);
+            if (Main.isDebugEnabled()) {
+                Main.debug(ex.getMessage());
+            }
         }
 
