File tree Expand file tree Collapse file tree 1 file changed +6
-5
lines changed
Expand file tree Collapse file tree 1 file changed +6
-5
lines changed Original file line number Diff line number Diff line change @@ -1193,11 +1193,11 @@ def seek(self, frame: int) -> None:
11931193 if not self ._seek_check (frame ):
11941194 return
11951195 self ._seek (frame )
1196- # Create a new core image object on second and
1197- # subsequent frames in the image. Image may be
1198- # different size/mode.
1199- Image . _decompression_bomb_check ( self . _tile_size )
1200- self . im = Image . core . new ( self . mode , self ._tile_size )
1196+ if self . _im is not None and (
1197+ self . im . size != self . _tile_size or self . im . mode != self . mode
1198+ ):
1199+ # The core image will no longer be used
1200+ self ._im = None
12011201
12021202 def _seek (self , frame : int ) -> None :
12031203 self .fp = self ._fp
@@ -1279,6 +1279,7 @@ def load(self) -> Image.core.PixelAccess | None:
12791279
12801280 def load_prepare (self ) -> None :
12811281 if self ._im is None :
1282+ Image ._decompression_bomb_check (self ._tile_size )
12821283 self .im = Image .core .new (self .mode , self ._tile_size )
12831284 ImageFile .ImageFile .load_prepare (self )
12841285
You can’t perform that action at this time.
0 commit comments