diff --git a/Tests/test_file_mic.py b/Tests/test_file_mic.py index f4059f9c9..614447119 100644 --- a/Tests/test_file_mic.py +++ b/Tests/test_file_mic.py @@ -54,6 +54,9 @@ class TestFileMic(PillowTestCase): self.assertRaises(EOFError, im.seek, 99) self.assertEqual(im.tell(), 0) + def test_unclosed_file(self): + self.assert_warning(None, Image.open, TEST_FILE) + def test_invalid_file(self): # Test an invalid OLE file invalid_file = "Tests/images/flower.jpg" diff --git a/src/PIL/MicImagePlugin.py b/src/PIL/MicImagePlugin.py index cff84d5eb..89f848716 100644 --- a/src/PIL/MicImagePlugin.py +++ b/src/PIL/MicImagePlugin.py @@ -88,7 +88,9 @@ class MicImageFile(TiffImagePlugin.TiffImageFile): except IndexError: raise EOFError("no such frame") + prev_fp = self.fp self.fp = self.ole.openstream(filename) + prev_fp.close() TiffImagePlugin.TiffImageFile._open(self)