[Python-checkins] cpython (merge 3.5 -> default): merge 3.5 (#27248)

benjamin.peterson python-checkins at python.org
Thu Jul 7 02:28:34 EDT 2016


https://hg.python.org/cpython/rev/f7c180dbc070
changeset:   102274:f7c180dbc070
parent:      102271:85973348664c
parent:      102272:f1fcf60863f8
user:        Benjamin Peterson <benjamin at python.org>
date:        Wed Jul 06 23:28:19 2016 -0700
summary:
  merge 3.5 (#27248)

Patch from Xiang Zhang.

files:
  Objects/typeobject.c |  12 +++++++++---
  1 files changed, 9 insertions(+), 3 deletions(-)


diff --git a/Objects/typeobject.c b/Objects/typeobject.c
--- a/Objects/typeobject.c
+++ b/Objects/typeobject.c
@@ -4522,8 +4522,10 @@
         descr = PyDescr_NewMember(type, memb);
         if (descr == NULL)
             return -1;
-        if (PyDict_SetItemString(dict, memb->name, descr) < 0)
+        if (PyDict_SetItemString(dict, memb->name, descr) < 0) {
+            Py_DECREF(descr);
             return -1;
+        }
         Py_DECREF(descr);
     }
     return 0;
@@ -4542,8 +4544,10 @@
 
         if (descr == NULL)
             return -1;
-        if (PyDict_SetItemString(dict, gsp->name, descr) < 0)
+        if (PyDict_SetItemString(dict, gsp->name, descr) < 0) {
+            Py_DECREF(descr);
             return -1;
+        }
         Py_DECREF(descr);
     }
     return 0;
@@ -7023,8 +7027,10 @@
             descr = PyDescr_NewWrapper(type, p, *ptr);
             if (descr == NULL)
                 return -1;
-            if (PyDict_SetItem(dict, p->name_strobj, descr) < 0)
+            if (PyDict_SetItem(dict, p->name_strobj, descr) < 0) {
+                Py_DECREF(descr);
                 return -1;
+            }
             Py_DECREF(descr);
         }
     }

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list