From 45b228e835c35b9ae19877402b5041410ed4dee3 Mon Sep 17 00:00:00 2001 From: Guillaume Ayoub Date: Mon, 3 Aug 2020 18:07:38 +0200 Subject: [PATCH] Fix exception handling when saving images The e variable is already used in the for loop, use exc to store the exception. --- src/PIL/ImageFile.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/PIL/ImageFile.py b/src/PIL/ImageFile.py index 81ec0c266..b06b89811 100644 --- a/src/PIL/ImageFile.py +++ b/src/PIL/ImageFile.py @@ -509,7 +509,7 @@ def _save(im, fp, tile, bufsize=0): try: fh = fp.fileno() fp.flush() - except (AttributeError, io.UnsupportedOperation) as e: + except (AttributeError, io.UnsupportedOperation) as exc: # compress to Python file-compatible object for e, b, o, a in tile: e = Image._getencoder(im.mode, e, a, im.encoderconfig) @@ -526,7 +526,7 @@ def _save(im, fp, tile, bufsize=0): if s: break if s < 0: - raise OSError("encoder error %d when writing image file" % s) from e + raise OSError("encoder error %d when writing image file" % s) from exc e.cleanup() else: # slight speedup: compress to real file object