@@ -63,7 +63,7 @@ public void readJpegSegments(@NotNull final Iterable<byte[]> segments, @NotNull
63
63
for (byte [] segmentBytes : segments ) {
64
64
// Segment must have the expected preamble
65
65
if (startsWithJpegExifPreamble (segmentBytes )) {
66
- extract (new ByteArrayReader (segmentBytes , JPEG_SEGMENT_PREAMBLE .length ()), metadata );
66
+ extract (new ByteArrayReader (segmentBytes , JPEG_SEGMENT_PREAMBLE .length ()), metadata , JPEG_SEGMENT_PREAMBLE . length () );
67
67
}
68
68
}
69
69
}
@@ -76,15 +76,15 @@ public static boolean startsWithJpegExifPreamble(byte[] bytes)
76
76
}
77
77
78
78
/** Reads TIFF formatted Exif data a specified offset within a {@link RandomAccessReader}. */
79
- public void extract (@ NotNull final RandomAccessReader reader , @ NotNull final Metadata metadata )
79
+ public void extract (@ NotNull final RandomAccessReader reader , @ NotNull final Metadata metadata , int preambleLength )
80
80
{
81
- extract (reader , metadata , null );
81
+ extract (reader , metadata , null , preambleLength );
82
82
}
83
83
84
84
/** Reads TIFF formatted Exif data at a specified offset within a {@link RandomAccessReader}. */
85
- public void extract (@ NotNull final RandomAccessReader reader , @ NotNull final Metadata metadata , @ Nullable Directory parentDirectory )
85
+ public void extract (@ NotNull final RandomAccessReader reader , @ NotNull final Metadata metadata , @ Nullable Directory parentDirectory , int exifStartOffset )
86
86
{
87
- ExifTiffHandler exifTiffHandler = new ExifTiffHandler (metadata , parentDirectory , /*readerOffset*/ 0 ); // FIXME what to do?
87
+ ExifTiffHandler exifTiffHandler = new ExifTiffHandler (metadata , parentDirectory , exifStartOffset );
88
88
89
89
try {
90
90
// Read the TIFF-formatted Exif data
0 commit comments