bug-bash
[Top][All Lists]
Advanced

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

Re: [BUG] RETURN trap with -o functrace: infinite recursion on 'eval ret


From: Chet Ramey
Subject: Re: [BUG] RETURN trap with -o functrace: infinite recursion on 'eval return'
Date: Sun, 15 Apr 2018 22:04:20 -0400
User-agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:52.0) Gecko/20100101 Thunderbird/52.7.0

On 4/13/18 11:29 PM, Martijn Dekker wrote:
> Op 14-04-18 om 03:49 schreef Chet Ramey:
>> On 4/10/18 5:56 AM, Martijn Dekker wrote:
>>> It seems odd that the RETURN trap would be triggered while a RETURN trap
>>> action is still being executed. Might it be better to temporarily
>>> deactivate the effect of '-o functrace' while a RETURN trap action is being
>>> executed?
>>
>> Well, trap handlers are recursive, in the sense that you can execute a trap
>> on signal X from a signal X trap handler.
> 
> I'm not sure how that would happen. Isn't a signal blocked while executing
> its trap handler?

No. Since trap handlers are not executed in a signal handler context,
there's no reason to block signals while a trap handler is running. Bash
doesn't generally allow a trap handler for signal X to run while a trap
handler for signal X is executing, but other shells do. This (bash not
allowing this trap recursion generally) has been reported as a bug in the
past.

Chet

-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
                 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU    chet@case.edu    http://tiswww.cwru.edu/~chet/



reply via email to

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