Correction, it should be 'wait "$!"' not 'wait' - the latter has different 
semantics from what we want here.

X

On 03/03/15 09:31, Ximin Luo wrote:
> As a follow-up, this hunk is also required: 
> 
> ---- cut here ----
> --- /usr/bin/xvfb-run 2015-03-03 09:25:05.899998561 +0100
> +++ /usr/bin/xvfb-run 2015-03-03 02:19:40.543821712 +0100
> @@ -180,7 +180,7 @@
>  
>  # Start the command and save its exit status.
>  set +e
> -DISPLAY=:$SERVERNUM XAUTHORITY=$AUTHFILE "$@" 2>&1
> +DISPLAY=:$SERVERNUM XAUTHORITY=$AUTHFILE "$@" 2>&1 & wait
>  RETVAL=$?
>  set -e
>  
> ---- cut here ----
> 
> because (as per man bash(1)): "If bash is waiting for a command to complete 
> and receives a signal for which a trap has been set, the trap will not be 
> executed until the command completes. When bash is waiting for an 
> asynchronous command  via  the  wait  builtin, the reception of a signal for 
> which a trap has been set will cause the wait builtin to return immediately 
> with an exit status greater than 128, immediately after which  the trap is 
> executed."
> 
> The behaviour is the same as above for dash, as can be verified by sending 
> signals to the following test script:
> 
> ---- cut here ----
> #!/bin/sh
> clean_up() {
>       echo "got here"
> }
> trap clean_up EXIT INT TERM
> sleep 68 & wait
> ---- cut here ----
> 
> X
> 

-- 
GPG: 4096R/1318EFAC5FBBDBCE
git://github.com/infinity0/pubkeys.git


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: https://lists.debian.org/[email protected]

Reply via email to