]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
[3.14] gh-154275: Fix cleanup code in `_Py_make_parameters` (GH-154341) (#154343)
authorMiss Islington (bot) <31488909+miss-islington@users.noreply.github.com>
Tue, 21 Jul 2026 10:53:06 +0000 (12:53 +0200)
committerGitHub <noreply@github.com>
Tue, 21 Jul 2026 10:53:06 +0000 (10:53 +0000)
gh-154275: Fix cleanup code in `_Py_make_parameters` (GH-154341)
(cherry picked from commit 196e16d54f9f06f566c52e7bca3b5213a8a64223)

Co-authored-by: sobolevn <mail@sobolevn.me>
Objects/genericaliasobject.c

index ea3ad683f53ff672a704d6d44e020b5a6a7f9cbf..010707cd0ef78a8b1d34034e562d200b4412509e 100644 (file)
@@ -195,15 +195,14 @@ _Py_make_parameters(PyObject *args)
     if (is_args_list) {
         args = tuple_args = PySequence_Tuple(args);
         if (args == NULL) {
-            return NULL;
+            goto cleanup;
         }
     }
     Py_ssize_t nargs = PyTuple_GET_SIZE(args);
     Py_ssize_t len = nargs;
     PyObject *parameters = PyTuple_New(len);
     if (parameters == NULL) {
-        Py_XDECREF(tuple_args);
-        return NULL;
+        goto error;
     }
     Py_ssize_t iparam = 0;
     for (Py_ssize_t iarg = 0; iarg < nargs; iarg++) {