On 9/18/15 11:14 AM, Stephane Chazelas wrote: > Hello. > > In: > > bash -c 'sh -c "trap exit INT; sleep 10; :"; echo hi' > > If I press Ctrl-C, I still see "hi". > > On Solaris with 4.1.11(2)-release (i386-pc-solaris2.11), that > seems to be consistent. > > On Debian with 4.3.42(1)-release (x86_64-pc-linux-gnu), that > seems to happen only in something like 80% of the time. > > For bash to exit upon receiving that SIGINT, the currently > running process has to die itself as well of SIGINT (or the > currently running command to be builtin). > > That sounds like a bad idea, especially considering that it > doesn't exit either if the process returns with exit code 130 > upon receiving that SIGINT. For instance: > > For instance, in: > > bash -c 'mksh -c "sleep 10; :"; echo hi' > > Upon pressing Ctrl-C, mksh handles the SIGINT and exits with > 130 (as opposed to dying of a SIGINT), so bash doesn't exit > (sometimes only on Debian).
I'm surprised you've managed to avoid the dozen or so discussions on the topic. http://lists.gnu.org/archive/html/bug-bash/2014-03/msg00108.html Chet -- ``The lyf so short, the craft so long to lerne.'' - Chaucer ``Ars longa, vita brevis'' - Hippocrates Chet Ramey, ITS, CWRU c...@case.edu http://cnswww.cns.cwru.edu/~chet/