]> granicus.if.org Git - python/commitdiff
Issue #18520: Fix initstdio(), handle PySys_SetObject() failure
authorVictor Stinner <victor.stinner@gmail.com>
Mon, 22 Jul 2013 21:55:19 +0000 (23:55 +0200)
committerVictor Stinner <victor.stinner@gmail.com>
Mon, 22 Jul 2013 21:55:19 +0000 (23:55 +0200)
Python/pythonrun.c

index 30e5e6f0c373871346ada19d7379e843349089df..18c2baa656d16f3d904b2ac5379495243fa1fd5b 100644 (file)
@@ -1159,8 +1159,14 @@ initstdio(void)
     }
     PyErr_Clear();  /* Not a fatal error if codec isn't available */
 
-    PySys_SetObject("__stderr__", std);
-    PySys_SetObject("stderr", std);
+    if (PySys_SetObject("__stderr__", std) < 0) {
+        Py_DECREF(std);
+        goto error;
+    }
+    if (PySys_SetObject("stderr", std) < 0) {
+        Py_DECREF(std);
+        goto error;
+    }
     Py_DECREF(std);
 #endif