Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:15.0:Staging:B
bash
bash-4.4-wait-sigint-handler.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File bash-4.4-wait-sigint-handler.patch of Package bash
Repeating self-calling of traps due the combination of a non-interactive shell, a trap handler for SIGINT, an external process in the trap handler, and a SIGINT within the trap after the external process runs. --- jobs.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) --- jobs.c +++ jobs.c 2018-04-02 18:24:21.000000000 +0000 @@ -2662,7 +2662,17 @@ wait_for (pid) wait_sigint_received = child_caught_sigint = 0; if (job_control == 0 || (subshell_environment&SUBSHELL_COMSUB)) { - old_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler); + SigHandler *temp_sigint_handler; + + temp_sigint_handler = set_signal_handler (SIGINT, wait_sigint_handler); + if (temp_sigint_handler == wait_sigint_handler) + { +#if defined (DEBUG) + internal_warning ("wait_for: recursively setting old_sigint_handler to wait_sigint_handler: running_trap = %d", running_trap); +#endif + } + else + old_sigint_handler = temp_sigint_handler; waiting_for_child = 0; if (old_sigint_handler == SIG_IGN) set_signal_handler (SIGINT, old_sigint_handler);
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor