From 0df43e4f93fcfbbbef8befc1b71b800d6ff1a7d7 Mon Sep 17 00:00:00 2001 From: hugovk Date: Sat, 25 Oct 2014 23:42:02 +0300 Subject: [PATCH 1/4] Avoid divide by zero --- PIL/TiffImagePlugin.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/PIL/TiffImagePlugin.py b/PIL/TiffImagePlugin.py index 4e76379c0..b95fde51d 100644 --- a/PIL/TiffImagePlugin.py +++ b/PIL/TiffImagePlugin.py @@ -1153,8 +1153,11 @@ def _save(im, fp, filename): # following tiffcp.c->cpTag->TIFF_RATIONAL atts[k] = float(v[0][0])/float(v[0][1]) continue - if type(v) == tuple and len(v) > 2: + if (type(v) == tuple and + (len(v) > 2 or + (len(v) == 2 and v[1] == 0))): # List of ints? + # Avoid divide by zero in next if-clause if type(v[0]) in (int, float): atts[k] = list(v) continue From 86c5fdc7aa4f20b8787ee7069953bc74f79c819f Mon Sep 17 00:00:00 2001 From: hugovk Date: Sun, 26 Oct 2014 18:14:34 +0200 Subject: [PATCH 2/4] Created by printing a page in Chrome to PDF, then: /usr/bin/gs -q -sDEVICE=tiffg3 -sOutputFile=total-pages-zero.tif -dNOPAUSE /tmp/test.pdf -c quit --- Tests/images/total-pages-zero.tif | Bin 0 -> 97123 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 Tests/images/total-pages-zero.tif diff --git a/Tests/images/total-pages-zero.tif b/Tests/images/total-pages-zero.tif new file mode 100644 index 0000000000000000000000000000000000000000..50df07af3dd3c42d49cda056a023b9b673c3b990 GIT binary patch literal 97123 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 YY)#+Wzu608505%C53JJu&wF9~52r8vIRF3v literal 0 HcmV?d00001 From 6ec6b16eb6549c2a43daf5556d63733b7d3940c2 Mon Sep 17 00:00:00 2001 From: hugovk Date: Sun, 26 Oct 2014 18:16:08 +0200 Subject: [PATCH 3/4] Test TIFF with PageNumber 0 0 --- Tests/test_file_tiff.py | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/Tests/test_file_tiff.py b/Tests/test_file_tiff.py index cf809d5d0..ad6642d0f 100644 --- a/Tests/test_file_tiff.py +++ b/Tests/test_file_tiff.py @@ -299,6 +299,26 @@ class TestFileTiff(PillowTestCase): self.assertEqual(ret, [0, 1]) + def test_page_number_x_0(self): + # Issue 973 + # Test TIFF with tag 297 (Page Number) having value of 0 0. + # The first number is the current page number. + # The second is the total number of pages, zero means not available. + + # Arrange + outfile = self.tempfile("temp.tif") + + # Created by printing a page in Chrome to PDF, then: + # /usr/bin/gs -q -sDEVICE=tiffg3 -sOutputFile=total-pages-zero.tif + # -dNOPAUSE /tmp/test.pdf -c quit + infile = "Tests/images/total-pages-zero.tif" + im = Image.open(infile) + + # Act / Assert + # Should not divide by zero + im.save("test.tif") + + if __name__ == '__main__': unittest.main() From 4a92c24aa6d316116728639f591e64938cea6da6 Mon Sep 17 00:00:00 2001 From: Hugo Date: Mon, 27 Oct 2014 09:31:22 +0200 Subject: [PATCH 4/4] Save to a self.tempfile() so it's properly cleaned up afterwards --- Tests/test_file_tiff.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Tests/test_file_tiff.py b/Tests/test_file_tiff.py index ad6642d0f..2241123ac 100644 --- a/Tests/test_file_tiff.py +++ b/Tests/test_file_tiff.py @@ -316,7 +316,7 @@ class TestFileTiff(PillowTestCase): # Act / Assert # Should not divide by zero - im.save("test.tif") + im.save(outfile) if __name__ == '__main__':