Skip to content

Commit 0cc2e69

Browse files
committed
Corrected reading EXIF metadata without prefix
1 parent 9df95e7 commit 0cc2e69

2 files changed

Lines changed: 12 additions & 1 deletion

File tree

Tests/test_file_webp_metadata.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,15 @@ def test_read_exif_metadata():
3030
assert exif_data == expected_exif
3131

3232

33+
def test_read_exif_metadata_without_prefix():
34+
with Image.open("Tests/images/flower2.webp") as im:
35+
# Assert prefix is not present
36+
assert im.info["exif"][:6] != b"Exif\x00\x00"
37+
38+
exif = im.getexif()
39+
assert exif[305] == "Adobe Photoshop CS6 (Macintosh)"
40+
41+
3342
def test_write_exif_metadata():
3443
file_path = "Tests/images/flower.jpg"
3544
test_buffer = BytesIO()

src/PIL/Image.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3289,7 +3289,9 @@ def load(self, data):
32893289
if not data:
32903290
return
32913291

3292-
self.fp = io.BytesIO(data[6:])
3292+
if data.startswith(b"Exif\x00\x00"):
3293+
data = data[6:]
3294+
self.fp = io.BytesIO(data)
32933295
self.head = self.fp.read(8)
32943296
# process dictionary
32953297
from . import TiffImagePlugin

0 commit comments

Comments
 (0)