pillow: sync with gentoo

This commit is contained in:
Anton Bolshakov 2024-01-02 10:55:22 +08:00
parent a6b0e11aef
commit 685a075380
No known key found for this signature in database
GPG key ID: 32BDCED870788F04
2 changed files with 56 additions and 1 deletions

View file

@ -0,0 +1,50 @@
From 0e523d986858e7c0b4acd45ea1c5a3a639e39b4b Mon Sep 17 00:00:00 2001
From: Andrew Murray <radarhere@users.noreply.github.com>
Date: Sat, 2 Dec 2023 10:57:16 +1100
Subject: [PATCH] Fixed closing file pointer with olefile 0.47
---
src/PIL/FpxImagePlugin.py | 1 +
src/PIL/MicImagePlugin.py | 3 +++
2 files changed, 4 insertions(+)
diff --git a/src/PIL/FpxImagePlugin.py b/src/PIL/FpxImagePlugin.py
index a878cbfd2..3027ef45b 100644
--- a/src/PIL/FpxImagePlugin.py
+++ b/src/PIL/FpxImagePlugin.py
@@ -227,6 +227,7 @@ class FpxImageFile(ImageFile.ImageFile):
break # isn't really required
self.stream = stream
+ self._fp = self.fp
self.fp = None
def load(self):
diff --git a/src/PIL/MicImagePlugin.py b/src/PIL/MicImagePlugin.py
index 801318930..e4154902f 100644
--- a/src/PIL/MicImagePlugin.py
+++ b/src/PIL/MicImagePlugin.py
@@ -66,6 +66,7 @@ class MicImageFile(TiffImagePlugin.TiffImageFile):
self._n_frames = len(self.images)
self.is_animated = self._n_frames > 1
+ self.__fp = self.fp
self.seek(0)
def seek(self, frame):
@@ -87,10 +88,12 @@ class MicImageFile(TiffImagePlugin.TiffImageFile):
return self.frame
def close(self):
+ self.__fp.close()
self.ole.close()
super().close()
def __exit__(self, *args):
+ self.__fp.close()
self.ole.close()
super().__exit__()
--
2.43.0

View file

@ -1,4 +1,4 @@
# Copyright 1999-2023 Gentoo Authors
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@ -72,6 +72,11 @@ EPYTEST_DESELECT=(
Tests/test_qt_image_qapplication.py::test_sanity
)
PATCHES=(
# https://github.com/python-pillow/pillow/pull/7594
"${FILESDIR}/${P}-olefile-0.47.patch"
)
usepil() {
usex "${1}" enable disable
}