Merge pull request #6159 from radarhere/jpeg_zero

This commit is contained in:
Hugo van Kemenade 2022-03-28 20:37:04 +03:00 committed by GitHub
commit 4459dfadcb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 10 additions and 1 deletions

View File

@ -68,6 +68,13 @@ class TestFileJpeg:
assert im.format == "JPEG"
assert im.get_format_mimetype() == "image/jpeg"
@pytest.mark.parametrize("size", ((1, 0), (0, 1), (0, 0)))
def test_zero(self, size, tmp_path):
f = str(tmp_path / "temp.jpg")
im = Image.new("RGB", size)
with pytest.raises(ValueError):
im.save(f)
def test_app(self):
# Test APP/COM reader (@PIL135)
with Image.open(TEST_FILE) as im:

View File

@ -656,7 +656,7 @@ class TestImage:
temp_file = str(tmp_path / "temp.jpg")
im = Image.new("RGB", (0, 0))
with pytest.raises(SystemError):
with pytest.raises(ValueError):
im.save(temp_file)
assert not os.path.exists(temp_file)

View File

@ -626,6 +626,8 @@ def get_sampling(im):
def _save(im, fp, filename):
if im.width == 0 or im.height == 0:
raise ValueError("cannot write empty image as JPEG")
try:
rawmode = RAWMODE[im.mode]