From 9c7d3a0e4a0537dfe54b7a585da3d8246c10a8cc Mon Sep 17 00:00:00 2001 From: paddywwoof Date: Tue, 30 Jul 2019 18:06:43 +0100 Subject: [PATCH] fix unpack to c_ssize_t on 32 bit systems with corrupt EXIF data --- src/PIL/TiffImagePlugin.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/PIL/TiffImagePlugin.py b/src/PIL/TiffImagePlugin.py index dabcf8eb4..3d8eaede7 100644 --- a/src/PIL/TiffImagePlugin.py +++ b/src/PIL/TiffImagePlugin.py @@ -771,7 +771,12 @@ class ImageFileDirectory_v2(MutableMapping): "Tag Location: %s - Data Location: %s" % (here, offset), end=" ", ) - fp.seek(offset) + try: + fp.seek(offset) + except OverflowError as e: + if DEBUG: + print("- offset value wrong. Possibly corrupt EXIF data. ", e) + continue # ignore corrupt EXIF data data = ImageFile._safe_read(fp, size) fp.seek(here) else: