mirror of
https://sourceware.org/git/glibc.git
synced 2025-01-19 07:00:08 +00:00
support: Close original descriptors in support_capture_subprocess
(cherry picked from commit 02cd5c1a8d
)
This commit is contained in:
parent
0f79dc0be3
commit
e75481a7a7
@ -1,3 +1,9 @@
|
||||
2018-12-01 Florian Weimer <fweimer@redhat.com>
|
||||
|
||||
* support/support_capture_subprocess.c
|
||||
(support_capture_subprocess): Check that pipe descriptors have
|
||||
expected values. Close original pipe descriptors in subprocess.
|
||||
|
||||
2018-11-28 Florian Weimer <fweimer@redhat.com>
|
||||
|
||||
* support/support.h (support_quote_string): Do not use str
|
||||
|
@ -59,8 +59,12 @@ support_capture_subprocess (void (*callback) (void *), void *closure)
|
||||
|
||||
int stdout_pipe[2];
|
||||
xpipe (stdout_pipe);
|
||||
TEST_VERIFY (stdout_pipe[0] > STDERR_FILENO);
|
||||
TEST_VERIFY (stdout_pipe[1] > STDERR_FILENO);
|
||||
int stderr_pipe[2];
|
||||
xpipe (stderr_pipe);
|
||||
TEST_VERIFY (stderr_pipe[0] > STDERR_FILENO);
|
||||
TEST_VERIFY (stderr_pipe[1] > STDERR_FILENO);
|
||||
|
||||
TEST_VERIFY (fflush (stdout) == 0);
|
||||
TEST_VERIFY (fflush (stderr) == 0);
|
||||
@ -72,6 +76,8 @@ support_capture_subprocess (void (*callback) (void *), void *closure)
|
||||
xclose (stderr_pipe[0]);
|
||||
xdup2 (stdout_pipe[1], STDOUT_FILENO);
|
||||
xdup2 (stderr_pipe[1], STDERR_FILENO);
|
||||
xclose (stdout_pipe[1]);
|
||||
xclose (stderr_pipe[1]);
|
||||
callback (closure);
|
||||
_exit (0);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user