blob: 05b18902a5e87d776de6e4c9c339e5f0c78f702a [file] [log] [blame]
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_ */