diff options
author | Lionel Landwerlin <llandwerlin@gmail.com> | 2010-01-27 02:08:58 +0100 |
---|---|---|
committer | Peter Korsgaard <jacmet@sunsite.dk> | 2010-01-28 22:31:27 +0100 |
commit | fe6e67ba96b7fedf91faac7992813f7233a5e58b (patch) | |
tree | 46fe50138f19ff53e56245f5081ef07e2de6a309 /package/readline/readline52-007.patch | |
parent | 5ad8ad0c3729ccf7012f414969304950fb58c456 (diff) |
readline: convert to autotools infrastructure
[Peter: renamed patches to get picked up by infrastructure]
Signed-off-by: Lionel Landwerlin <llandwerlin@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'package/readline/readline52-007.patch')
-rw-r--r-- | package/readline/readline52-007.patch | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/package/readline/readline52-007.patch b/package/readline/readline52-007.patch new file mode 100644 index 000000000..6c2d0d103 --- /dev/null +++ b/package/readline/readline52-007.patch @@ -0,0 +1,65 @@ + READLINE PATCH REPORT + ===================== + +Readline-Release: 5.2 +Patch-ID: readline52-007 + +Bug-Reported-by: Tom Bjorkholm <tom.bjorkholm@ericsson.com> +Bug-Reference-ID: <AEA1A32F001C6B4F98614B5B80D7647D01C075E9@esealmw115.eemea.ericsson.se> +Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-readline/2007-04/msg00004.html + + +Bug-Description: + +An off-by-one error in readline's input buffering caused readline to drop +each 511th character of buffered input (e.g., when pasting a large amount +of data into a terminal window). + +Patch: + +*** ../readline-5.2/input.c Wed Aug 16 15:15:16 2006 +--- ./input.c Tue Jul 17 09:24:21 2007 +*************** +*** 134,139 **** + + *key = ibuffer[pop_index++]; +! + if (pop_index >= ibuffer_len) + pop_index = 0; + +--- 134,142 ---- + + *key = ibuffer[pop_index++]; +! #if 0 + if (pop_index >= ibuffer_len) ++ #else ++ if (pop_index > ibuffer_len) ++ #endif + pop_index = 0; + +*************** +*** 251,255 **** + { + k = (*rl_getc_function) (rl_instream); +! rl_stuff_char (k); + if (k == NEWLINE || k == RETURN) + break; +--- 254,259 ---- + { + k = (*rl_getc_function) (rl_instream); +! if (rl_stuff_char (k) == 0) +! break; /* some problem; no more room */ + if (k == NEWLINE || k == RETURN) + break; +*************** +*** 374,378 **** +--- 378,386 ---- + } + ibuffer[push_index++] = key; ++ #if 0 + if (push_index >= ibuffer_len) ++ #else ++ if (push_index > ibuffer_len) ++ #endif + push_index = 0; + |