diff options
Diffstat (limited to 'Modules/_posixsubprocess.c')
-rw-r--r-- | Modules/_posixsubprocess.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Modules/_posixsubprocess.c b/Modules/_posixsubprocess.c index 7d5a7fe17c..60dd78d92a 100644 --- a/Modules/_posixsubprocess.c +++ b/Modules/_posixsubprocess.c @@ -264,9 +264,15 @@ _close_fds_by_brute_force(long start_fd, PyObject *py_fds_to_keep) start_fd = keep_fd + 1; } if (start_fd <= end_fd) { +#if defined(__FreeBSD__) + /* Any errors encountered while closing file descriptors are ignored */ + closefrom(start_fd); +#else for (fd_num = start_fd; fd_num < end_fd; ++fd_num) { - close(fd_num); + /* Ignore errors */ + (void)close(fd_num); } +#endif } } |