From 2dced8b602df10531cab6cd87da5503c06f14888 Mon Sep 17 00:00:00 2001 From: Guido van Rossum Date: Tue, 30 Oct 2007 17:27:30 +0000 Subject: Patch 1329 (partial) by Christian Heimes. Add a closefd flag to open() which can be set to False to prevent closing the file descriptor when close() is called or when the object is destroyed. Useful to ensure that sys.std{in,out,err} keep their file descriptors open when Python is uninitialized. (This was always a feature in 2.x, it just wasn't implemented in 3.0 yet.) --- Python/pythonrun.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'Python/pythonrun.c') diff --git a/Python/pythonrun.c b/Python/pythonrun.c index 330667a219..76da8fb7f7 100644 --- a/Python/pythonrun.c +++ b/Python/pythonrun.c @@ -720,7 +720,7 @@ initstdio(void) /* Set sys.stdin */ if (!(std = PyFile_FromFd(fileno(stdin), "", "r", -1, - NULL, "\n"))) { + NULL, "\n", 0))) { goto error; } PySys_SetObject("__stdin__", std); @@ -729,16 +729,16 @@ initstdio(void) /* Set sys.stdout */ if (!(std = PyFile_FromFd(fileno(stdout), "", "w", -1, - NULL, "\n"))) { + NULL, "\n", 0))) { goto error; } PySys_SetObject("__stdout__", std); PySys_SetObject("stdout", std); Py_DECREF(std); - /* Set sys.stderr */ + /* Set sys.stderr, replaces the preliminary stderr */ if (!(std = PyFile_FromFd(fileno(stderr), "", "w", -1, - NULL, "\n"))) { + NULL, "\n", 0))) { goto error; } PySys_SetObject("__stderr__", std); -- cgit v1.2.1