En Tue, 15 Dec 2009 11:17:20 -0300, Jan Langer
<jan.lan...@etit.tu-chemnitz.de> escribió:
from test.test_support import captured_output
with captured_output("stderr") as stderr:
def g():
try:
g()
except RuntimeError,e:
pass
g()
print stderr.getvalue()
I expect the ignored exceptions to be printed into the StringIO object
stderr. With this code there are no warnings on the command line, but
getvalue() returns nothing.
If sys.stderr is not a real file, no error gets printed.
PyErr_WriteUnraisable calls PyFile_WriteString, which checks for non-file
objects and only writes to them when no error is set.
Seems to be a safety measure.
--
Gabriel Genellina
--
http://mail.python.org/mailman/listinfo/python-list