diff --git a/src/PIL/GifImagePlugin.py b/src/PIL/GifImagePlugin.py index f8cacffbd..f2857ac36 100644 --- a/src/PIL/GifImagePlugin.py +++ b/src/PIL/GifImagePlugin.py @@ -286,6 +286,16 @@ class GifImageFile(ImageFile.ImageFile): if self.palette: self.mode = "P" + def load_prepare(self): + super(GifImageFile, self).load_prepare() + + if self.__frame == 0: + # On the first frame, clear the buffer. Use the transparency index + # if we have one, otherwise use the background index. + default_color = self.info.get("transparency", + self.info.get("background", 0)) + self.im.paste(default_color, (0,0, self.size[0], self.size[1])) + def tell(self): return self.__frame