diff --git a/src/_imaging.c b/src/_imaging.c index 7e9c0e391c8..ada8c594b5c 100644 --- a/src/_imaging.c +++ b/src/_imaging.c @@ -2504,7 +2504,7 @@ _split(ImagingObject *self, PyObject *args) { PyObject *imaging_object; Imaging bands[4] = {NULL, NULL, NULL, NULL}; - if (!ImagingSplit(self->image, bands)) { + if (ImagingSplit(self->image, bands)) { return NULL; } diff --git a/src/libImaging/Bands.c b/src/libImaging/Bands.c index d1fa16addff..92999a5ddd8 100644 --- a/src/libImaging/Bands.c +++ b/src/libImaging/Bands.c @@ -75,13 +75,13 @@ ImagingSplit(Imaging imIn, Imaging bands[4]) { /* Check arguments */ if (!imIn || imIn->type != IMAGING_TYPE_UINT8) { (void)ImagingError_ModeError(); - return 0; + return -1; } /* Shortcuts */ if (imIn->bands == 1) { bands[0] = ImagingCopy(imIn); - return imIn->bands; + return 0; } for (i = 0; i < imIn->bands; i++) { @@ -90,7 +90,7 @@ ImagingSplit(Imaging imIn, Imaging bands[4]) { for (j = 0; j < i; ++j) { ImagingDelete(bands[j]); } - return 0; + return -1; } } @@ -170,7 +170,7 @@ ImagingSplit(Imaging imIn, Imaging bands[4]) { } } - return imIn->bands; + return 0; } Imaging