diff options
author | Zackery Spytz <zspytz@gmail.com> | 2019-03-25 08:07:47 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2019-03-25 08:07:47 (GMT) |
commit | 5e333784f007950f22de44c1ffab5b0c03d6691f (patch) | |
tree | 1b331b21914777b6d2a75980fa9fd7b00800f150 /Modules | |
parent | dd5417afcf8924bcdd7077351941ad21727ef644 (diff) | |
download | cpython-5e333784f007950f22de44c1ffab5b0c03d6691f.zip cpython-5e333784f007950f22de44c1ffab5b0c03d6691f.tar.gz cpython-5e333784f007950f22de44c1ffab5b0c03d6691f.tar.bz2 |
bpo-36421: Fix a possible double decref in _ctypes.c's PyCArrayType_new(). (GH-12530)
Set type_attr to NULL after the assignment to stgdict->proto (like
what is done with stgdict after the Py_SETREF() call) so that it is
not decrefed twice on error.
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/_ctypes/_ctypes.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/Modules/_ctypes/_ctypes.c b/Modules/_ctypes/_ctypes.c index 0d95d2b..45102f3 100644 --- a/Modules/_ctypes/_ctypes.c +++ b/Modules/_ctypes/_ctypes.c @@ -1522,6 +1522,7 @@ PyCArrayType_new(PyTypeObject *type, PyObject *args, PyObject *kwds) stgdict->align = itemalign; stgdict->length = length; stgdict->proto = type_attr; + type_attr = NULL; stgdict->paramfunc = &PyCArrayType_paramfunc; |