gh-139817: Fix refleak in TypeAliasType(qualname=non_string) (GH-140197)

This commit is contained in:
Petr Viktorin 2025-10-16 13:04:04 +02:00 committed by GitHub
parent 4641925bf2
commit ea4cc585cd
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -2123,11 +2123,6 @@ typealias_new_impl(PyTypeObject *type, PyObject *name, PyObject *value,
return NULL;
}
PyObject *module = caller();
if (module == NULL) {
return NULL;
}
if (qualname == NULL || qualname == Py_None) {
// If qualname was not set directly, we use name instead.
qualname = name;
@ -2138,6 +2133,11 @@ typealias_new_impl(PyTypeObject *type, PyObject *name, PyObject *value,
}
}
PyObject *module = caller();
if (module == NULL) {
return NULL;
}
PyObject *ta = (PyObject *)typealias_alloc(
name, qualname, checked_params, NULL, value, module);
Py_DECREF(module);