1 | BASH PATCH REPORT |
---|
2 | ================= |
---|
3 | |
---|
4 | Bash-Release: 4.3 |
---|
5 | Patch-ID: bash43-019 |
---|
6 | |
---|
7 | Bug-Reported-by: John Lenton |
---|
8 | Bug-Reference-ID: |
---|
9 | Bug-Reference-URL: https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1317476 |
---|
10 | |
---|
11 | Bug-Description: |
---|
12 | |
---|
13 | The -t timeout option to `read' does not work when the -e option is used. |
---|
14 | |
---|
15 | Patch (apply with `patch -p0'): |
---|
16 | |
---|
17 | *** ../bash-4.3-patched/lib/readline/input.c 2014-01-10 15:07:08.000000000 -0500 |
---|
18 | --- lib/readline/input.c 2014-05-22 18:40:59.000000000 -0400 |
---|
19 | *************** |
---|
20 | *** 535,540 **** |
---|
21 | --- 538,551 ---- |
---|
22 | else if (_rl_caught_signal == SIGHUP || _rl_caught_signal == SIGTERM) |
---|
23 | return (RL_ISSTATE (RL_STATE_READCMD) ? READERR : EOF); |
---|
24 | + /* keyboard-generated signals of interest */ |
---|
25 | else if (_rl_caught_signal == SIGINT || _rl_caught_signal == SIGQUIT) |
---|
26 | RL_CHECK_SIGNALS (); |
---|
27 | + /* non-keyboard-generated signals of interest */ |
---|
28 | + else if (_rl_caught_signal == SIGALRM |
---|
29 | + #if defined (SIGVTALRM) |
---|
30 | + || _rl_caught_signal == SIGVTALRM |
---|
31 | + #endif |
---|
32 | + ) |
---|
33 | + RL_CHECK_SIGNALS (); |
---|
34 | |
---|
35 | if (rl_signal_event_hook) |
---|
36 | *** ../bash-4.3-patched/builtins/read.def 2013-09-02 11:54:00.000000000 -0400 |
---|
37 | --- builtins/read.def 2014-05-08 11:43:35.000000000 -0400 |
---|
38 | *************** |
---|
39 | *** 443,447 **** |
---|
40 | #if defined (READLINE) |
---|
41 | if (edit) |
---|
42 | ! add_unwind_protect (reset_attempted_completion_function, (char *)NULL); |
---|
43 | #endif |
---|
44 | falarm (tmsec, tmusec); |
---|
45 | --- 443,450 ---- |
---|
46 | #if defined (READLINE) |
---|
47 | if (edit) |
---|
48 | ! { |
---|
49 | ! add_unwind_protect (reset_attempted_completion_function, (char *)NULL); |
---|
50 | ! add_unwind_protect (bashline_reset_event_hook, (char *)NULL); |
---|
51 | ! } |
---|
52 | #endif |
---|
53 | falarm (tmsec, tmusec); |
---|
54 | *************** |
---|
55 | *** 1022,1025 **** |
---|
56 | --- 1025,1029 ---- |
---|
57 | old_attempted_completion_function = rl_attempted_completion_function; |
---|
58 | rl_attempted_completion_function = (rl_completion_func_t *)NULL; |
---|
59 | + bashline_set_event_hook (); |
---|
60 | if (itext) |
---|
61 | { |
---|
62 | *************** |
---|
63 | *** 1033,1036 **** |
---|
64 | --- 1037,1041 ---- |
---|
65 | rl_attempted_completion_function = old_attempted_completion_function; |
---|
66 | old_attempted_completion_function = (rl_completion_func_t *)NULL; |
---|
67 | + bashline_reset_event_hook (); |
---|
68 | |
---|
69 | if (ret == 0) |
---|
70 | *** ../bash-4.3/patchlevel.h 2012-12-29 10:47:57.000000000 -0500 |
---|
71 | --- patchlevel.h 2014-03-20 20:01:28.000000000 -0400 |
---|
72 | *************** |
---|
73 | *** 26,30 **** |
---|
74 | looks for to find the patch level (for the sccs version string). */ |
---|
75 | |
---|
76 | ! #define PATCHLEVEL 18 |
---|
77 | |
---|
78 | #endif /* _PATCHLEVEL_H_ */ |
---|
79 | --- 26,30 ---- |
---|
80 | looks for to find the patch level (for the sccs version string). */ |
---|
81 | |
---|
82 | ! #define PATCHLEVEL 19 |
---|
83 | |
---|
84 | #endif /* _PATCHLEVEL_H_ */ |
---|