Only set LOAD_TRUNCATED_IMAGES when if the Image open fails.

Document which PIL issues this works around.
This commit is contained in:
comfyanonymous 2024-05-04 03:39:37 -04:00
parent 0d45efb7d6
commit 72508a8d19
1 changed files with 8 additions and 7 deletions

View File

@ -1,4 +1,4 @@
from PIL import Image, ImageFile
from PIL import Image, ImageFile, UnidentifiedImageError
def conditioning_set_values(conditioning, values={}):
c = []
@ -11,14 +11,15 @@ def conditioning_set_values(conditioning, values={}):
return c
def open_image(path):
try :
ImageFile.LOAD_TRUNCATED_IMAGES = False
prev_value = None
try:
img = Image.open(path)
except:
except (UnidentifiedImageError, ValueError): #PIL issues #4472 and #2445
prev_value = ImageFile.LOAD_TRUNCATED_IMAGES
ImageFile.LOAD_TRUNCATED_IMAGES = True
img = Image.open(path)
finally:
ImageFile.LOAD_TRUNCATED_IMAGES = False
if prev_value is not None:
ImageFile.LOAD_TRUNCATED_IMAGES = prev_value
return img