diff --git a/imageio/plugins/pillowmulti.py b/imageio/plugins/pillowmulti.py index e680b0f8a..61e2b6f43 100644 --- a/imageio/plugins/pillowmulti.py +++ b/imageio/plugins/pillowmulti.py @@ -55,9 +55,7 @@ class GIFFormat(PillowFormat): _modes = "iI" _description = "Static and animated gif (Pillow)" - class Reader(PillowFormat.Reader): - def _open(self, playback=None): # compat with FI format - return PillowFormat.Reader._open(self) + # GIF reader needs no modifications compared to base pillow reader class Writer(PillowFormat.Writer): def _open( diff --git a/tests/test_pillow.py b/tests/test_pillow.py index 9e7942921..000c6d80e 100644 --- a/tests/test_pillow.py +++ b/tests/test_pillow.py @@ -258,6 +258,13 @@ def test_gif(): raises(TypeError, imageio.imread, fname, notavalidkwarg=True) raises(TypeError, imageio.imsave, fnamebase + "1.gif", im, notavalidk=True) +def test_gif_pilmode(): + # Bug found in issue #600 + image = np.asarray(imageio.mimread("imageio:newtonscradle.gif", pilmode="RGB")) + assert np.array_equal(image.shape, (36, 150, 200, 3)) + + image = np.asarray(imageio.mimread("imageio:newtonscradle.gif", pilmode="RGBA")) + assert np.array_equal(image.shape, (36, 150, 200, 4)) def test_animated_gif():