From 87d00fe441b74d1da981236c9232adbb07fd2d8b Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Wed, 29 Jul 2015 20:01:23 +1000 Subject: [PATCH 1/5] Catch TypeError in _getexif file seek --- PIL/JpegImagePlugin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PIL/JpegImagePlugin.py b/PIL/JpegImagePlugin.py index 7cb280764..da8c6922d 100644 --- a/PIL/JpegImagePlugin.py +++ b/PIL/JpegImagePlugin.py @@ -423,7 +423,7 @@ def _getexif(self): # get exif extension try: file.seek(exif[0x8769]) - except KeyError: + except (KeyError, TypeError): pass else: info = TiffImagePlugin.ImageFileDirectory(head) From 3a25b1cd9bb81a2bad8531d2e3da4c8d1847f148 Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Wed, 29 Jul 2015 23:38:26 +1000 Subject: [PATCH 2/5] Added test for _getexif TypeError --- Tests/images/exif_typeerror.jpg | Bin 0 -> 52510 bytes Tests/test_file_jpeg.py | 6 ++++++ 2 files changed, 6 insertions(+) create mode 100644 Tests/images/exif_typeerror.jpg diff --git a/Tests/images/exif_typeerror.jpg b/Tests/images/exif_typeerror.jpg new file mode 100644 index 0000000000000000000000000000000000000000..550859a0abbe0b4282d03de812eee46ba7e97f5e GIT binary patch literal 52510 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 literal 0 HcmV?d00001 diff --git a/Tests/test_file_jpeg.py b/Tests/test_file_jpeg.py index 25c599a17..371b7037b 100644 --- a/Tests/test_file_jpeg.py +++ b/Tests/test_file_jpeg.py @@ -166,6 +166,12 @@ class TestFileJpeg(PillowTestCase): im = hopper() im.save(f, 'JPEG', quality=90, exif=b"1"*65532) + def test_exif_typeerror(self): + im = Image.open('Tests/images/exif_typeerror.jpg') + + # Should not raise a TypeError + im._getexif() + def test_progressive_compat(self): im1 = self.roundtrip(hopper()) im2 = self.roundtrip(hopper(), progressive=1) From c614846fb73e21f6f5cf8338d64749fba4068385 Mon Sep 17 00:00:00 2001 From: wiredfool Date: Thu, 10 Sep 2015 04:19:25 -0700 Subject: [PATCH 3/5] Extend the fix to the other exif seek --- PIL/JpegImagePlugin.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/PIL/JpegImagePlugin.py b/PIL/JpegImagePlugin.py index da8c6922d..b1c25db1d 100644 --- a/PIL/JpegImagePlugin.py +++ b/PIL/JpegImagePlugin.py @@ -433,7 +433,7 @@ def _getexif(self): # get gpsinfo extension try: file.seek(exif[0x8825]) - except KeyError: + except (KeyError, TypeError): pass else: info = TiffImagePlugin.ImageFileDirectory(head) From 587698051fa92d4ea416c835cdf1037c1bfdccc1 Mon Sep 17 00:00:00 2001 From: wiredfool Date: Thu, 10 Sep 2015 04:36:07 -0700 Subject: [PATCH 4/5] comments for future understanding --- PIL/JpegImagePlugin.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/PIL/JpegImagePlugin.py b/PIL/JpegImagePlugin.py index b1c25db1d..38e4a5f87 100644 --- a/PIL/JpegImagePlugin.py +++ b/PIL/JpegImagePlugin.py @@ -422,6 +422,9 @@ def _getexif(self): exif[key] = _fixup(value) # get exif extension try: + # exif field 0x8769 is an offset pointer to the location + # of the nested embedded exif ifd. + # It should be a long, but may be corrupted. file.seek(exif[0x8769]) except (KeyError, TypeError): pass @@ -432,7 +435,10 @@ def _getexif(self): exif[key] = _fixup(value) # get gpsinfo extension try: - file.seek(exif[0x8825]) + # exif field 0x8825 is an offset pointer to the location + # of the nested embedded gps exif ifd. + # It should be a long, but may be corrupted. + file.seek(exif[0x8825]) except (KeyError, TypeError): pass else: From 07d95c38611fb0f13946671b2f69f933f825347f Mon Sep 17 00:00:00 2001 From: wiredfool Date: Thu, 10 Sep 2015 05:21:21 -0700 Subject: [PATCH 5/5] Added test for typeerror test for gpsexif --- Tests/images/exif_gps_typeerror.jpg | Bin 0 -> 52510 bytes Tests/test_file_jpeg.py | 5 +++++ 2 files changed, 5 insertions(+) create mode 100644 Tests/images/exif_gps_typeerror.jpg diff --git a/Tests/images/exif_gps_typeerror.jpg b/Tests/images/exif_gps_typeerror.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0b1f060438aef10d8f0d4cc67628ca75572793db GIT binary patch literal 52510 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 literal 0 HcmV?d00001 diff --git a/Tests/test_file_jpeg.py b/Tests/test_file_jpeg.py index 371b7037b..e6da7bb8b 100644 --- a/Tests/test_file_jpeg.py +++ b/Tests/test_file_jpeg.py @@ -168,6 +168,11 @@ class TestFileJpeg(PillowTestCase): def test_exif_typeerror(self): im = Image.open('Tests/images/exif_typeerror.jpg') + # Should not raise a TypeError + im._getexif() + + def test_exif_gps_typeerror(self): + im = Image.open('Tests/images/exif_gps_typeerror.jpg') # Should not raise a TypeError im._getexif()