[Python-checkins] [2.7] Fix a possible "double decref" in termios.tcgetattr(). (GH-10194) (GH-10218)

Serhiy Storchaka webhook-mailer at python.org
Mon Oct 29 12:03:31 EDT 2018


https://github.com/python/cpython/commit/64ffee7ad2655c7de9b3b6548aad0c317877ec49
commit: 64ffee7ad2655c7de9b3b6548aad0c317877ec49
branch: 2.7
author: Zackery Spytz <zspytz at gmail.com>
committer: Serhiy Storchaka <storchaka at gmail.com>
date: 2018-10-29T18:03:26+02:00
summary:

[2.7] Fix a possible "double decref" in termios.tcgetattr(). (GH-10194) (GH-10218)

(cherry picked from commit 53835e92d315340444e3dd083b3f69a590b00e07)

files:
M Modules/termios.c

diff --git a/Modules/termios.c b/Modules/termios.c
index e26e714e0ec1..4349df64817a 100644
--- a/Modules/termios.c
+++ b/Modules/termios.c
@@ -120,11 +120,11 @@ termios_tcgetattr(PyObject *self, PyObject *args)
     PyList_SetItem(v, 3, PyInt_FromLong((long)mode.c_lflag));
     PyList_SetItem(v, 4, PyInt_FromLong((long)ispeed));
     PyList_SetItem(v, 5, PyInt_FromLong((long)ospeed));
-    PyList_SetItem(v, 6, cc);
-    if (PyErr_Occurred()){
+    if (PyErr_Occurred()) {
         Py_DECREF(v);
         goto err;
     }
+    PyList_SetItem(v, 6, cc);
     return v;
   err:
     Py_DECREF(cc);



More information about the Python-checkins mailing list