[Bug 189] ash behaves strangely on CTRL-C (does not exit but fills process table)

bugzilla at busybox.net bugzilla at busybox.net
Wed Mar 18 12:24:12 UTC 2009


https://bugs.busybox.net/show_bug.cgi?id=189





--- Comment #6 from Ronald Wahl <ronald.wahl at raritan.com>  2009-03-18 12:24:12 UTC ---
Probably we also need to move the "pendingsig = 0;" outside of the inner if
statement, to catch the case that pendingsig is 1 already and a SIGINT occurs
when INTs are supposed to be suppressed. Semantically we need to achieve that
when intpending is 1 then pendingsig must be 0 otherwise the shell might not
exit on SIGINT.

Alternatively we could call dotrap() only when pendingsig is 1 and intpending
is 0 but this might be racy as well because here the check is not signal safe
because it is outside of the signal handler.

Oh well, signal handling is an awful topic ... ;-)


-- 
Configure bugmail: https://bugs.busybox.net/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.


More information about the busybox-cvs mailing list