diff --git a/Tests/test_imagesequence.py b/Tests/test_imagesequence.py index 9fbf3fed8a7..aafb6e02e12 100644 --- a/Tests/test_imagesequence.py +++ b/Tests/test_imagesequence.py @@ -32,6 +32,12 @@ def test_iterator(self): self.assertRaises(IndexError, lambda: i[index+1]) self.assertRaises(StopIteration, next, i) + def test_iterator_min_frame(self): + im = Image.open('Tests/images/hopper.psd') + i = ImageSequence.Iterator(im) + for index in range(1, im.n_frames): + self.assertEqual(i[index], next(i)) + def _test_multipage_tiff(self): im = Image.open('Tests/images/multipage.tiff') for index, frame in enumerate(ImageSequence.Iterator(im)): diff --git a/src/PIL/ImageSequence.py b/src/PIL/ImageSequence.py index 1fc6e5de165..84199fe2726 100644 --- a/src/PIL/ImageSequence.py +++ b/src/PIL/ImageSequence.py @@ -32,7 +32,7 @@ def __init__(self, im): if not hasattr(im, "seek"): raise AttributeError("im must have seek method") self.im = im - self.position = 0 + self.position = getattr(self.im, "_min_frame", 0) def __getitem__(self, ix): try: