| From https://ftp.gnu.org/gnu/bash/bash-4.4-patches/bash44-023 |
| |
| Signed-off-by: Peter Korsgaard <peter@korsgaard.com> |
| |
| BASH PATCH REPORT |
| ================= |
| |
| Bash-Release: 4.4 |
| Patch-ID: bash44-023 |
| |
| Bug-Reported-by: Martijn Dekker <martijn@inlv.org> |
| Bug-Reference-ID: <5326d6b9-2625-1d32-3e6e-ad1d15462c09@inlv.org> |
| Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2016-11/msg00041.html |
| |
| Bug-Description: |
| |
| When sourcing a file from an interactive shell, setting the SIGINT handler |
| to the default and typing ^C will cause the shell to exit. |
| |
| Patch (apply with `patch -p0'): |
| |
| *** bash-4.4-patched/builtins/trap.def 2016-01-25 13:32:38.000000000 -0500 |
| --- b/builtins/trap.def 2016-11-06 12:04:35.000000000 -0500 |
| *************** |
| *** 99,102 **** |
| --- b/99,103 ---- |
| |
| extern int posixly_correct, subshell_environment; |
| + extern int sourcelevel, running_trap; |
| |
| int |
| *************** |
| *** 213,216 **** |
| --- b/214,220 ---- |
| if (interactive) |
| set_signal_handler (SIGINT, sigint_sighandler); |
| + /* special cases for interactive == 0 */ |
| + else if (interactive_shell && (sourcelevel||running_trap)) |
| + set_signal_handler (SIGINT, sigint_sighandler); |
| else |
| set_signal_handler (SIGINT, termsig_sighandler); |
| *** bash-4.4/patchlevel.h 2016-06-22 14:51:03.000000000 -0400 |
| --- b/patchlevel.h 2016-10-01 11:01:28.000000000 -0400 |
| *************** |
| *** 26,30 **** |
| looks for to find the patch level (for the sccs version string). */ |
| |
| ! #define PATCHLEVEL 22 |
| |
| #endif /* _PATCHLEVEL_H_ */ |
| --- b/26,30 ---- |
| looks for to find the patch level (for the sccs version string). */ |
| |
| ! #define PATCHLEVEL 23 |
| |
| #endif /* _PATCHLEVEL_H_ */ |