From c74e45e87cf60aec00a3b55a35ea3dc982b40f64 Mon Sep 17 00:00:00 2001 From: Marcus Brinkmann Date: Thu, 29 Sep 2016 14:54:25 +0200 Subject: [PATCH] Force reloading palette when using mmap in ImageFile. --- PIL/ImageFile.py | 3 +++ Tests/images/multipage-mmap.tiff | Bin 0 -> 5760 bytes Tests/test_imagesequence.py | 9 +++++++++ 3 files changed, 12 insertions(+) create mode 100644 Tests/images/multipage-mmap.tiff diff --git a/PIL/ImageFile.py b/PIL/ImageFile.py index cda64efcf..a66452478 100644 --- a/PIL/ImageFile.py +++ b/PIL/ImageFile.py @@ -170,6 +170,9 @@ class ImageFile(Image.Image): self.map, self.size, d, e, o, a ) readonly = 1 + # After trashing self.im, we might need to reload the palette data. + if self.palette: + self.palette.dirty = 1 except (AttributeError, EnvironmentError, ImportError): self.map = None diff --git a/Tests/images/multipage-mmap.tiff b/Tests/images/multipage-mmap.tiff new file mode 100644 index 0000000000000000000000000000000000000000..162b0521ba0838422de4f1de884a341b93904b3b GIT binary patch literal 5760 zcmeI$39ye<7{~F?-{q=g%~A-JY$@7zE^V#|g^Ef=D@uz>$WpXNQ6xzVm8~pUT9g#p zuJ$4!l@{Exv@4zW`oGPcVa7Dmm}dU(nRofkGtXJx^UQg_=Q+8#_3VP(Nfng}YPWEw z3h5%LtO9%Fm6g_!Uv^q&1zk4nKP8)rh3ZyH>n_2ka;jKCJ7a>blGfvcu3D(goS=nk zO0d@{9v-1YeMKdHD-t}4DkfX;F!Wu+fJ=nomsCn=Wt3IU9?GkrqDuC(m&&TBYH!t4 zSHnK`wV#^yS4(Ym)K$*`>O0Uu8ffTXhd9(>4tInj9pz}pIM#8F*GOYInrP|-CpyW= zPSH%R=1$c@OQ&h2wKh(7hPK*i?@VVoTL><6P(Ijf8{hiQ_tsczoqRv|(Rv$fw8>9?_KRQr=68SC>`#B$624y&{|t_Q^dm^tf99_L zDE>RO68%qzKLKF$r?i}|=9=