|
Siteshwar Vashisht |
009518 |
From 64447609994bfddeef1061948022c074093e9a9f Mon Sep 17 00:00:00 2001
|
|
Siteshwar Vashisht |
009518 |
From: Chet Ramey <chet.ramey@case.edu>
|
|
Siteshwar Vashisht |
009518 |
Date: Fri, 1 Jun 2018 10:22:36 -0400
|
|
Siteshwar Vashisht |
009518 |
Subject: [PATCH] fix for SIGINT in sourced script
|
|
Siteshwar Vashisht |
009518 |
|
|
Siteshwar Vashisht |
009518 |
---
|
|
Siteshwar Vashisht |
009518 |
builtins/trap.def | 4 ++++
|
|
Siteshwar Vashisht |
009518 |
patchlevel.h | 2 +-
|
|
Siteshwar Vashisht |
009518 |
2 files changed, 5 insertions(+), 1 deletion(-)
|
|
Siteshwar Vashisht |
009518 |
|
|
Siteshwar Vashisht |
009518 |
diff --git a/builtins/trap.def b/builtins/trap.def
|
|
Siteshwar Vashisht |
009518 |
index 57d9b522..d43b0ef6 100644
|
|
Siteshwar Vashisht |
009518 |
--- a/builtins/trap.def
|
|
Siteshwar Vashisht |
009518 |
+++ b/builtins/trap.def
|
|
Siteshwar Vashisht |
009518 |
@@ -98,6 +98,7 @@ static int display_traps __P((WORD_LIST *));
|
|
Siteshwar Vashisht |
009518 |
#define IGNORE 2 /* Ignore this signal. */
|
|
Siteshwar Vashisht |
009518 |
|
|
Siteshwar Vashisht |
009518 |
extern int posixly_correct, subshell_environment;
|
|
Siteshwar Vashisht |
009518 |
+extern int sourcelevel, running_trap;
|
|
Siteshwar Vashisht |
009518 |
|
|
Siteshwar Vashisht |
009518 |
int
|
|
Siteshwar Vashisht |
009518 |
trap_builtin (list)
|
|
Siteshwar Vashisht |
009518 |
@@ -212,6 +213,9 @@ trap_builtin (list)
|
|
Siteshwar Vashisht |
009518 |
was SIG_IGN? */
|
|
Siteshwar Vashisht |
009518 |
if (interactive)
|
|
Siteshwar Vashisht |
009518 |
set_signal_handler (SIGINT, sigint_sighandler);
|
|
Siteshwar Vashisht |
009518 |
+ /* special cases for interactive == 0 */
|
|
Siteshwar Vashisht |
009518 |
+ else if (interactive_shell && (sourcelevel||running_trap))
|
|
Siteshwar Vashisht |
009518 |
+ set_signal_handler (SIGINT, sigint_sighandler);
|
|
Siteshwar Vashisht |
009518 |
else
|
|
Siteshwar Vashisht |
009518 |
set_signal_handler (SIGINT, termsig_sighandler);
|
|
Siteshwar Vashisht |
009518 |
break;
|
|
Siteshwar Vashisht |
009518 |
diff --git a/patchlevel.h b/patchlevel.h
|
|
Siteshwar Vashisht |
009518 |
index 9be226c3..2060b58f 100644
|
|
Siteshwar Vashisht |
009518 |
--- a/patchlevel.h
|
|
Siteshwar Vashisht |
009518 |
+++ b/patchlevel.h
|
|
Siteshwar Vashisht |
009518 |
@@ -25,6 +25,6 @@
|
|
Siteshwar Vashisht |
009518 |
regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh
|
|
Siteshwar Vashisht |
009518 |
looks for to find the patch level (for the sccs version string). */
|
|
Siteshwar Vashisht |
009518 |
|
|
Siteshwar Vashisht |
009518 |
-#define PATCHLEVEL 22
|
|
Siteshwar Vashisht |
009518 |
+#define PATCHLEVEL 23
|
|
Siteshwar Vashisht |
009518 |
|
|
Siteshwar Vashisht |
009518 |
#endif /* _PATCHLEVEL_H_ */
|
|
Siteshwar Vashisht |
009518 |
--
|
|
Siteshwar Vashisht |
009518 |
2.14.4
|
|
Siteshwar Vashisht |
009518 |
|