bug-bash
[Top][All Lists]
Advanced

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

trap - inconsistent behaviour


From: Jeremy Townshend
Subject: trap - inconsistent behaviour
Date: Fri, 21 Sep 2018 00:39:57 +0100
User-agent: Mutt/1.5.24 (2015-08-30)

Configuration Information [Automatically generated, do not change]:
Machine: x86_64
OS: linux-gnu
Compiler: gcc
Compilation CFLAGS:  -DPROGRAM='bash' -DCONF_HOSTTYPE='x86_64' 
-DCONF_OSTYPE='linux-gnu' -DCONF_MACHTYPE='x86_64-pc-linux-gnu' 
-DCONF_VENDOR='pc' -DLOCALEDIR='/usr/share/locale' -DPACKAGE='bash' -DSHELL 
-DHAVE_CONFIG_H   -I.  -I../. -I.././include -I.././lib  -Wdate-time 
-D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/build/bash-vEMnMR/bash-4.4.18=. 
-fstack-protector-strong -Wformat -Werror=format-security -Wall 
-Wno-parentheses -Wno-format-security
uname output: Linux tower 4.15.0-32-generic #35-Ubuntu SMP Fri Aug 10 17:58:07 
UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Machine Type: x86_64-pc-linux-gnu

Bash Version: 4.4
Patch Level: 19
Release Status: release

Description:
        The behaviour of the "trap" builtin command changes merely by printing 
the
        list of commands associated with each signal (trap command issued 
without
        arguments).

Repeat-By:
        Case 1: In a fresh terminal emulator issue the following:

        ( trap 'echo trapped >&2' HUP; { sleep 10 & sleepPID=$!; wait 
$sleepPID; } > >( sleep 1; kill -HUP $BASHPID; cat ) )

        Case 2: Then in a fresh terminal emulator issue the following:

        ( trap 'echo trapped >&2' HUP; { sleep 10 & sleepPID=$!; wait 
$sleepPID; } > >( trap; sleep 1; kill -HUP $BASHPID; cat ) )

        Expected outcome: either the trap is triggered in both cases or in 
neither
        since the only difference is the additional trap command with no 
arguments
        (for printing the list of commands associated with each signal).  That 
is, in
        this case, "trapped" is expected to be printed in both cases or in 
neither
        case.

        Actual outcome: the trap is not triggered in the first instance but is
        triggered in the second.  

        Real use case: where zenity --progress --auto-kill is issuing the kill 
-HUP
        as a result of the cancel button being pressed.



reply via email to

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