From f6067ea0b463d420a421dd1de4e3da9db43c4f85 Mon Sep 17 00:00:00 2001 From: friendseeker <66892505+Friendseeker@users.noreply.github.com> Date: Fri, 20 Sep 2024 08:38:02 -0700 Subject: [PATCH] Fix gps buffer offset --- src/markers/exif.js | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/markers/exif.js b/src/markers/exif.js index 7493434..c9f2654 100644 --- a/src/markers/exif.js +++ b/src/markers/exif.js @@ -256,9 +256,9 @@ class IDFEntries { const { exifIFDPointer, gpsInfoIFDPointer } = entries; if (exifIFDPointer) { - buffer = buffer.slice(exifIFDPointer - 8); + const exifIFDBuffer = buffer.slice(exifIFDPointer - 8); entries.subExif = this._decodeIDFEntries( - buffer, + exifIFDBuffer, tags.ifd, exifIFDPointer, ); @@ -266,10 +266,8 @@ class IDFEntries { if (gpsInfoIFDPointer) { const gps = gpsInfoIFDPointer; - buffer = buffer.slice( - exifIFDPointer ? gps - exifIFDPointer : gps - offsetToFirstIFD, - ); - entries.gpsInfo = this._decodeIDFEntries(buffer, tags.gps, gps, true); + const gpsBuffer = buffer.slice(gps - 8); + entries.gpsInfo = this._decodeIDFEntries(gpsBuffer, tags.gps, gps, true); } stream.pos += parent.parent.length - 16;