summaryrefslogtreecommitdiffstats
path: root/source/a/bash/bash-4.4-patches/bash44-023
diff options
context:
space:
mode:
Diffstat (limited to 'source/a/bash/bash-4.4-patches/bash44-023')
-rw-r--r--source/a/bash/bash-4.4-patches/bash44-02352
1 files changed, 52 insertions, 0 deletions
diff --git a/source/a/bash/bash-4.4-patches/bash44-023 b/source/a/bash/bash-4.4-patches/bash44-023
new file mode 100644
index 000000000..dd8d75d9b
--- /dev/null
+++ b/source/a/bash/bash-4.4-patches/bash44-023
@@ -0,0 +1,52 @@
+ 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
+--- builtins/trap.def 2016-11-06 12:04:35.000000000 -0500
+***************
+*** 99,102 ****
+--- 99,103 ----
+
+ extern int posixly_correct, subshell_environment;
++ extern int sourcelevel, running_trap;
+
+ int
+***************
+*** 213,216 ****
+--- 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
+--- 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_ */
+--- 26,30 ----
+ looks for to find the patch level (for the sccs version string). */
+
+! #define PATCHLEVEL 23
+
+ #endif /* _PATCHLEVEL_H_ */