summaryrefslogtreecommitdiff
path: root/Python
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2015-09-29 13:59:50 +0200
committerVictor Stinner <victor.stinner@gmail.com>2015-09-29 13:59:50 +0200
commit3ed9455ec10bd03299d510301b25f36968476f96 (patch)
tree7684b97a960c43170287a6bfd7e63cb6925a0905 /Python
parente91e4e95302cb13fed6083ff025c27f2104239b3 (diff)
downloadcpython-3ed9455ec10bd03299d510301b25f36968476f96.tar.gz
Issue #18174: Explain why is_valid_fd() uses dup() instead of fstat()
Diffstat (limited to 'Python')
-rw-r--r--Python/pylifecycle.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/Python/pylifecycle.c b/Python/pylifecycle.c
index 4f5efc963c..857a543cf5 100644
--- a/Python/pylifecycle.c
+++ b/Python/pylifecycle.c
@@ -972,6 +972,9 @@ is_valid_fd(int fd)
if (fd < 0 || !_PyVerify_fd(fd))
return 0;
_Py_BEGIN_SUPPRESS_IPH
+ /* Prefer dup() over fstat(). fstat() can require input/output whereas
+ dup() doesn't, there is a low risk of EMFILE/ENFILE at Python
+ startup. */
fd2 = dup(fd);
if (fd2 >= 0)
close(fd2);