aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChet Ramey <chet.ramey@case.edu>2014-08-01 15:30:33 -0400
committerChet Ramey <chet.ramey@case.edu>2014-08-01 15:30:33 -0400
commit9b86eb22c434c8848c9d592cba32d7e8fdf61459 (patch)
tree6e2f57d27aebaaafbc3b5692661159cc2b066b38
parent35751626eebdec08c6ac8600b33477e6db31988a (diff)
downloadandroid_external_bash-9b86eb22c434c8848c9d592cba32d7e8fdf61459.tar.gz
android_external_bash-9b86eb22c434c8848c9d592cba32d7e8fdf61459.tar.bz2
android_external_bash-9b86eb22c434c8848c9d592cba32d7e8fdf61459.zip
Bash-4.3 patch 19
-rw-r--r--builtins/read.def7
-rw-r--r--lib/readline/input.c8
-rw-r--r--patchlevel.h2
3 files changed, 15 insertions, 2 deletions
diff --git a/builtins/read.def b/builtins/read.def
index 56945b9..4397154 100644
--- a/builtins/read.def
+++ b/builtins/read.def
@@ -442,7 +442,10 @@ read_builtin (list)
add_unwind_protect (reset_alarm, (char *)NULL);
#if defined (READLINE)
if (edit)
- add_unwind_protect (reset_attempted_completion_function, (char *)NULL);
+ {
+ add_unwind_protect (reset_attempted_completion_function, (char *)NULL);
+ add_unwind_protect (bashline_reset_event_hook, (char *)NULL);
+ }
#endif
falarm (tmsec, tmusec);
}
@@ -1021,6 +1024,7 @@ edit_line (p, itext)
old_attempted_completion_function = rl_attempted_completion_function;
rl_attempted_completion_function = (rl_completion_func_t *)NULL;
+ bashline_set_event_hook ();
if (itext)
{
old_startup_hook = rl_startup_hook;
@@ -1032,6 +1036,7 @@ edit_line (p, itext)
rl_attempted_completion_function = old_attempted_completion_function;
old_attempted_completion_function = (rl_completion_func_t *)NULL;
+ bashline_reset_event_hook ();
if (ret == 0)
return ret;
diff --git a/lib/readline/input.c b/lib/readline/input.c
index 117dfe8..f3f6d59 100644
--- a/lib/readline/input.c
+++ b/lib/readline/input.c
@@ -534,8 +534,16 @@ rl_getc (stream)
return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
else if (_rl_caught_signal == SIGHUP || _rl_caught_signal == SIGTERM)
return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF);
+ /* keyboard-generated signals of interest */
else if (_rl_caught_signal == SIGINT || _rl_caught_signal == SIGQUIT)
RL_CHECK_SIGNALS ();
+ /* non-keyboard-generated signals of interest */
+ else if (_rl_caught_signal == SIGALRM
+#if defined (SIGVTALRM)
+ || _rl_caught_signal == SIGVTALRM
+#endif
+ )
+ RL_CHECK_SIGNALS ();
if (rl_signal_event_hook)
(*rl_signal_event_hook) ();
diff --git a/patchlevel.h b/patchlevel.h
index d669696..0a57e4b 100644
--- a/patchlevel.h
+++ b/patchlevel.h
@@ -25,6 +25,6 @@
regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh
looks for to find the patch level (for the sccs version string). */
-#define PATCHLEVEL 18
+#define PATCHLEVEL 19
#endif /* _PATCHLEVEL_H_ */