#3242: fix a crash in "print", if sys.stdout is set to a custom object,

whose write() method installs another sys.stdout.

Will backport.
This commit is contained in:
Amaury Forgeot d'Arc 2008-07-01 20:38:04 +00:00
parent dbd0ae383d
commit bdd941fac3
3 changed files with 25 additions and 1 deletions

View file

@ -1617,9 +1617,11 @@ PyEval_EvalFrameEx(PyFrameObject *f, int throwflag)
"lost sys.stdout");
}
if (w != NULL) {
Py_INCREF(w);
err = PyFile_WriteString("\n", w);
if (err == 0)
PyFile_SoftSpace(w, 0);
Py_DECREF(w);
}
Py_XDECREF(stream);
stream = NULL;