Index: trunk/src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java	(revision 8242)
+++ trunk/src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java	(revision 8243)
@@ -603,6 +603,6 @@
         try {
             metadata = JpegMetadataReader.readMetadata(e.getFile());
-            dirExif = metadata.getDirectory(ExifIFD0Directory.class);
-            dirGps = metadata.getDirectory(GpsDirectory.class);
+            dirExif = metadata.getFirstDirectoryOfType(ExifIFD0Directory.class);
+            dirGps = metadata.getFirstDirectoryOfType(GpsDirectory.class);
         } catch (CompoundException | IOException p) {
             e.setExifCoor(null);
Index: trunk/src/org/openstreetmap/josm/tools/ExifReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/ExifReader.java	(revision 8242)
+++ trunk/src/org/openstreetmap/josm/tools/ExifReader.java	(revision 8243)
@@ -87,5 +87,5 @@
         try {
             final Metadata metadata = JpegMetadataReader.readMetadata(filename);
-            final Directory dir = metadata.getDirectory(ExifIFD0Directory.class);
+            final Directory dir = metadata.getFirstDirectoryOfType(ExifIFD0Directory.class);
             return dir.getInt(ExifIFD0Directory.TAG_ORIENTATION);
         } catch (JpegProcessingException | MetadataException | IOException e) {
@@ -104,5 +104,5 @@
         try {
             final Metadata metadata = JpegMetadataReader.readMetadata(filename);
-            final GpsDirectory dirGps = metadata.getDirectory(GpsDirectory.class);
+            final GpsDirectory dirGps = metadata.getFirstDirectoryOfType(GpsDirectory.class);
             return readLatLon(dirGps);
         } catch (JpegProcessingException e) {
@@ -141,5 +141,5 @@
         try {
             final Metadata metadata = JpegMetadataReader.readMetadata(filename);
-            final GpsDirectory dirGps = metadata.getDirectory(GpsDirectory.class);
+            final GpsDirectory dirGps = metadata.getFirstDirectoryOfType(GpsDirectory.class);
             return readDirection(dirGps);
         } catch (JpegProcessingException e) {
