From c622a9ecced5bec189e3b2c39b2e3c8684b66675 Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Fri, 2 Oct 2026 18:21:50 +1000 Subject: [PATCH 1/2] Remove unused cleanup return value --- src/decode.c | 8 +++----- src/encode.c | 8 +++----- src/libImaging/Imaging.h | 10 +++++----- src/libImaging/Jpeg2KDecode.c | 4 +--- src/libImaging/Jpeg2KEncode.c | 4 +--- src/libImaging/JpegDecode.c | 3 +-- src/libImaging/TiffDecode.c | 5 ++--- src/libImaging/TiffDecode.h | 2 +- src/libImaging/ZipDecode.c | 3 +-- src/libImaging/ZipEncode.c | 4 +--- 10 files changed, 19 insertions(+), 32 deletions(-) diff --git a/src/decode.c b/src/decode.c index caeac1aa77a..2cf1f40414b 100644 --- a/src/decode.c +++ b/src/decode.c @@ -48,7 +48,7 @@ typedef struct { PyObject_HEAD int (*decode)( Imaging im, ImagingCodecState state, UINT8 *buffer, Py_ssize_t bytes ); - int (*cleanup)(ImagingCodecState state); + void (*cleanup)(ImagingCodecState state); struct ImagingCodecStateInstance state; Imaging im; PyObject *lock; @@ -141,13 +141,11 @@ _decode(ImagingDecoderObject *decoder, PyObject *args) { static PyObject * _decode_cleanup(ImagingDecoderObject *decoder, PyObject *args) { - int status = 0; - if (decoder->cleanup) { - status = decoder->cleanup(&decoder->state); + decoder->cleanup(&decoder->state); } - return Py_BuildValue("i", status); + Py_RETURN_NONE; } extern Imaging diff --git a/src/encode.c b/src/encode.c index 8129ddc2f08..06c943db413 100644 --- a/src/encode.c +++ b/src/encode.c @@ -42,7 +42,7 @@ typedef struct { PyObject_HEAD int (*encode)( Imaging im, ImagingCodecState state, UINT8 *buffer, int bytes ); - int (*cleanup)(ImagingCodecState state); + void (*cleanup)(ImagingCodecState state); struct ImagingCodecStateInstance state; Imaging im; PyObject *lock; @@ -108,13 +108,11 @@ _dealloc(ImagingEncoderObject *encoder) { static PyObject * _encode_cleanup(ImagingEncoderObject *encoder, PyObject *args) { - int status = 0; - if (encoder->cleanup) { - status = encoder->cleanup(&encoder->state); + encoder->cleanup(&encoder->state); } - return Py_BuildValue("i", status); + Py_RETURN_NONE; } static PyObject * diff --git a/src/libImaging/Imaging.h b/src/libImaging/Imaging.h index 455d9c5706f..fd4628c40ad 100644 --- a/src/libImaging/Imaging.h +++ b/src/libImaging/Imaging.h @@ -618,7 +618,7 @@ ImagingHexDecode(Imaging im, ImagingCodecState state, UINT8 *buffer, Py_ssize_t #ifdef HAVE_LIBJPEG extern int ImagingJpegDecode(Imaging im, ImagingCodecState state, UINT8 *buffer, Py_ssize_t bytes); -extern int +extern void ImagingJpegDecodeCleanup(ImagingCodecState state); extern int ImagingJpegUseJCSExtensions(void); @@ -631,11 +631,11 @@ extern int ImagingJpeg2KDecode( Imaging im, ImagingCodecState state, UINT8 *buffer, Py_ssize_t bytes ); -extern int +extern void ImagingJpeg2KDecodeCleanup(ImagingCodecState state); extern int ImagingJpeg2KEncode(Imaging im, ImagingCodecState state, UINT8 *buffer, int bytes); -extern int +extern void ImagingJpeg2KEncodeCleanup(ImagingCodecState state); #endif #ifdef HAVE_LIBTIFF @@ -683,11 +683,11 @@ ImagingXbmEncode(Imaging im, ImagingCodecState state, UINT8 *buffer, int bytes); #ifdef HAVE_LIBZ extern int ImagingZipDecode(Imaging im, ImagingCodecState state, UINT8 *buffer, Py_ssize_t bytes); -extern int +extern void ImagingZipDecodeCleanup(ImagingCodecState state); extern int ImagingZipEncode(Imaging im, ImagingCodecState state, UINT8 *buffer, int bytes); -extern int +extern void ImagingZipEncodeCleanup(ImagingCodecState state); #endif diff --git a/src/libImaging/Jpeg2KDecode.c b/src/libImaging/Jpeg2KDecode.c index 4fbb04a7da3..fb0e1fc6a00 100644 --- a/src/libImaging/Jpeg2KDecode.c +++ b/src/libImaging/Jpeg2KDecode.c @@ -961,7 +961,7 @@ ImagingJpeg2KDecode(Imaging im, ImagingCodecState state, UINT8 *buf, Py_ssize_t /* Cleanup */ /* -------------------------------------------------------------------- */ -int +void ImagingJpeg2KDecodeCleanup(ImagingCodecState state) { JPEG2KDECODESTATE *context = (JPEG2KDECODESTATE *)state->context; @@ -970,8 +970,6 @@ ImagingJpeg2KDecodeCleanup(ImagingCodecState state) { } context->error_msg = NULL; - - return -1; } const char * diff --git a/src/libImaging/Jpeg2KEncode.c b/src/libImaging/Jpeg2KEncode.c index 3012783a2e4..b2cf854f878 100644 --- a/src/libImaging/Jpeg2KEncode.c +++ b/src/libImaging/Jpeg2KEncode.c @@ -637,7 +637,7 @@ ImagingJpeg2KEncode(Imaging im, ImagingCodecState state, UINT8 *buf, int bytes) /* Cleanup */ /* -------------------------------------------------------------------- */ -int +void ImagingJpeg2KEncodeCleanup(ImagingCodecState state) { JPEG2KENCODESTATE *context = (JPEG2KENCODESTATE *)state->context; @@ -656,8 +656,6 @@ ImagingJpeg2KEncodeCleanup(ImagingCodecState state) { context->error_msg = NULL; context->comment = NULL; - - return -1; } #endif /* HAVE_OPENJPEG */ diff --git a/src/libImaging/JpegDecode.c b/src/libImaging/JpegDecode.c index 05cb37554b3..116ffd8df49 100644 --- a/src/libImaging/JpegDecode.c +++ b/src/libImaging/JpegDecode.c @@ -291,7 +291,7 @@ ImagingJpegDecode(Imaging im, ImagingCodecState state, UINT8 *buf, Py_ssize_t by /* Cleanup */ /* -------------------------------------------------------------------- */ -int +void ImagingJpegDecodeCleanup(ImagingCodecState state) { /* called to free the decompression engine when the decode terminates due to a corrupt or truncated image @@ -300,7 +300,6 @@ ImagingJpegDecodeCleanup(ImagingCodecState state) { /* Clean up */ jpeg_destroy_decompress(&context->cinfo); - return -1; } #endif diff --git a/src/libImaging/TiffDecode.c b/src/libImaging/TiffDecode.c index 36039a28167..d40c54e7471 100644 --- a/src/libImaging/TiffDecode.c +++ b/src/libImaging/TiffDecode.c @@ -740,13 +740,13 @@ ImagingLibTiffSetField(ImagingCodecState state, ttag_t tag, ...) { return status; } -int +void ImagingLibTiffEncodeCleanup(ImagingCodecState state) { TIFFSTATE *clientstate = (TIFFSTATE *)state->context; TIFF *tiff = clientstate->tiff; if (!tiff) { - return 0; + return; } // TIFFClose in libtiff calls tif_closeproc and TIFFCleanup if (clientstate->fp) { @@ -759,7 +759,6 @@ ImagingLibTiffEncodeCleanup(ImagingCodecState state) { TIFFClose(tiff); } clientstate->tiff = NULL; - return 0; } int diff --git a/src/libImaging/TiffDecode.h b/src/libImaging/TiffDecode.h index b26eb2c1d56..c0ea9066dca 100644 --- a/src/libImaging/TiffDecode.h +++ b/src/libImaging/TiffDecode.h @@ -34,7 +34,7 @@ extern int ImagingLibTiffInit(ImagingCodecState state, int fp, uint32_t offset); extern int ImagingLibTiffEncodeInit(ImagingCodecState state, char *filename, int fp); -extern int +extern void ImagingLibTiffEncodeCleanup(ImagingCodecState state); extern int ImagingLibTiffMergeFieldInfo( diff --git a/src/libImaging/ZipDecode.c b/src/libImaging/ZipDecode.c index d964ff2ca7d..f5fab43f66e 100644 --- a/src/libImaging/ZipDecode.c +++ b/src/libImaging/ZipDecode.c @@ -283,7 +283,7 @@ ImagingZipDecode(Imaging im, ImagingCodecState state, UINT8 *buf, Py_ssize_t byt return bytes; /* consumed all of it */ } -int +void ImagingZipDecodeCleanup(ImagingCodecState state) { /* called to free the decompression engine when the decode terminates due to a corrupt or truncated image @@ -296,7 +296,6 @@ ImagingZipDecodeCleanup(ImagingCodecState state) { free(context->previous); context->previous = NULL; } - return -1; } #endif diff --git a/src/libImaging/ZipEncode.c b/src/libImaging/ZipEncode.c index 44f2629cc12..efe76d14685 100644 --- a/src/libImaging/ZipEncode.c +++ b/src/libImaging/ZipEncode.c @@ -350,7 +350,7 @@ ImagingZipEncode(Imaging im, ImagingCodecState state, UINT8 *buf, int bytes) { /* Cleanup */ /* -------------------------------------------------------------------- */ -int +void ImagingZipEncodeCleanup(ImagingCodecState state) { ZIPSTATE *context = (ZIPSTATE *)state->context; @@ -358,8 +358,6 @@ ImagingZipEncodeCleanup(ImagingCodecState state) { free(context->dictionary); context->dictionary = NULL; } - - return -1; } const char * From ccb2413ef8b21adad84d3a9e10ebb271db1096b9 Mon Sep 17 00:00:00 2001 From: Andrew Murray Date: Fri, 2 Oct 2026 18:21:57 +1000 Subject: [PATCH 2/2] Remove unused variable --- src/_imaging.c | 1 - 1 file changed, 1 deletion(-) diff --git a/src/_imaging.c b/src/_imaging.c index 0ce66d872cd..fa42332a815 100644 --- a/src/_imaging.c +++ b/src/_imaging.c @@ -2127,7 +2127,6 @@ static PyObject * _transform(ImagingObject *self, PyObject *args) { static const char *wrong_length = "wrong number of matrix entries"; - Imaging imOut; Py_ssize_t n; double *a;