[Python-checkins] Fix a possible refleak in tupleobject.c (GH-19018)

Hai Shi webhook-mailer at python.org
Sun Mar 15 15:37:57 EDT 2020


https://github.com/python/cpython/commit/c81609e44eed641d3b8a137daa31ef35501c1f85
commit: c81609e44eed641d3b8a137daa31ef35501c1f85
branch: master
author: Hai Shi <shihai1992 at gmail.com>
committer: GitHub <noreply at github.com>
date: 2020年03月15日T19:37:49Z
summary:
Fix a possible refleak in tupleobject.c (GH-19018)
files:
M Objects/tupleobject.c
diff --git a/Objects/tupleobject.c b/Objects/tupleobject.c
index 14ab53fca2270..839667ad6f173 100644
--- a/Objects/tupleobject.c
+++ b/Objects/tupleobject.c
@@ -737,8 +737,10 @@ tuple_subtype_new(PyTypeObject *type, PyObject *iterable)
 return NULL;
 assert(PyTuple_Check(tmp));
 newobj = type->tp_alloc(type, n = PyTuple_GET_SIZE(tmp));
- if (newobj == NULL)
+ if (newobj == NULL) {
+ Py_DECREF(tmp);
 return NULL;
+ }
 for (i = 0; i < n; i++) {
 item = PyTuple_GET_ITEM(tmp, i);
 Py_INCREF(item);


More information about the Python-checkins mailing list

AltStyle によって変換されたページ (->オリジナル) /