Skip to content

Commit

Permalink
Merge pull request #7753 from radarhere/eps
Browse files Browse the repository at this point in the history
  • Loading branch information
hugovk committed Mar 11, 2024
2 parents 94f319c + 5721577 commit 9ad22fc
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 6 deletions.
8 changes: 8 additions & 0 deletions Tests/test_file_eps.py
Expand Up @@ -437,3 +437,11 @@ def test_eof_before_bounding_box() -> None:
with pytest.raises(OSError):
with Image.open("Tests/images/zero_bb_eof_before_boundingbox.eps"):
pass


def test_invalid_data_after_eof() -> None:
with open("Tests/images/illuCS6_preview.eps", "rb") as f:
img_bytes = io.BytesIO(f.read() + b"\r\n%" + (b" " * 255))

with Image.open(img_bytes) as img:
assert img.mode == "RGB"
8 changes: 2 additions & 6 deletions src/PIL/EpsImagePlugin.py
Expand Up @@ -356,14 +356,10 @@ def _read_comment(s):

self._size = columns, rows
return
elif bytes_mv[:5] == b"%%EOF":
break
elif trailer_reached and reading_trailer_comments:
# Load EPS trailer

# if this line starts with "%%EOF",
# then we've reached the end of the file
if bytes_mv[:5] == b"%%EOF":
break

s = str(bytes_mv[:bytes_read], "latin-1")
_read_comment(s)
elif bytes_mv[:9] == b"%%Trailer":
Expand Down

0 comments on commit 9ad22fc

Please sign in to comment.