]> granicus.if.org Git - python/commitdiff
do not decref value borrowed from list (closes #27774)
authorBenjamin Peterson <benjamin@python.org>
Tue, 16 Aug 2016 05:01:41 +0000 (22:01 -0700)
committerBenjamin Peterson <benjamin@python.org>
Tue, 16 Aug 2016 05:01:41 +0000 (22:01 -0700)
Misc/NEWS
Modules/_sre.c

index 417da1397323f800c4b08efd810d80662372d3c9..ce599cde984de92e1e37b6fd4201827ed9a213ef 100644 (file)
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -29,6 +29,8 @@ Core and Builtins
 Library
 -------
 
+- Issue #27774: Fix possible Py_DECREF on unowned object in _sre.
+
 - Issue #27760: Fix possible integer overflow in binascii.b2a_qp.
 
 - In the curses module, raise an error if window.getstr() or window.instr() is
index 829fb6bdcc8734c3569cf79080874d2dafa5d8d3..8e16c1d140adfa967d5900645aa138d0b0434f97 100644 (file)
@@ -3438,10 +3438,8 @@ match_groupdict(MatchObject* self, PyObject* args, PyObject* kw)
         if (!key)
             goto failed;
         value = match_getslice(self, key, def);
-        if (!value) {
-            Py_DECREF(key);
+        if (!value)
             goto failed;
-        }
         status = PyDict_SetItem(result, key, value);
         Py_DECREF(value);
         if (status < 0)