]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
GH-104371: check return value of calling `mv.release` (#104417)
authorKumar Aditya <59607654+kumaraditya303@users.noreply.github.com>
Fri, 12 May 2023 12:57:06 +0000 (18:27 +0530)
committerGitHub <noreply@github.com>
Fri, 12 May 2023 12:57:06 +0000 (18:27 +0530)
Objects/typeobject.c

index a1ad5021c4150a3b8b29e7129203b4c357807385..c1525320a7cbd50310bfb437bce86364c308c0b6 100644 (file)
@@ -9158,7 +9158,13 @@ releasebuffer_call_python(PyObject *self, Py_buffer *buffer)
         Py_DECREF(ret);
     }
     if (!is_buffer_wrapper) {
-        PyObject_CallMethodNoArgs(mv, &_Py_ID(release));
+        PyObject *res = PyObject_CallMethodNoArgs(mv, &_Py_ID(release));
+        if (res == NULL) {
+            PyErr_WriteUnraisable(self);
+        }
+        else {
+            Py_DECREF(res);
+        }
     }
     Py_DECREF(mv);
 end: