[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Stable 2.0 and popen.test on Debian Squeeze

From: Mark H Weaver
Subject: Re: Stable 2.0 and popen.test on Debian Squeeze
Date: Wed, 02 Mar 2011 05:40:09 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux)

<address@hidden> writes:
> address@hidden:~/src/guile$ ./check-guile popen.test
> Testing /home/dsmith/src/guile/meta/guile ... popen.test
> with GUILE_LOAD_PATH=/home/dsmith/src/guile/test-suite
> Running popen.test
> FAIL: popen.test: open-output-pipe: no duplicate

The problem here is that "dash -c COMMAND" runs COMMAND as a subprocess
of dash, whereas "bash -c COMMAND" which uses exec such that COMMAND
replaces the bash process.

dash's behavior breaks the "open-output-pipe: no duplicate" test, which
checks that the parent will receive a SIGPIPE if the child closes its
STDIN without terminating.  This depends on the child not keeping a
duplicate of that file descriptor around (as was done in Guile 1.6.4),
hence the name of the test.

Because "dash -c" creates a subprocess instead of exec'ing, the waiting
dash process is holding a duplicate of its STDIN open.  This prevents
the child from closing the end of the pipe, and thus the parent does not
receive a SIGPIPE and the test fails.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]