b817e8c581
Fixes various issues, one in particular reported by Pascal de Bruijn on IRC where bash won't timeout when using readline as in 'read -e -t 10', which should escape back to shell when left alone for 10 seconds. Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar> Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
68 lines
2.1 KiB
Diff
68 lines
2.1 KiB
Diff
From http://ftp.gnu.org/pub/gnu/readline/readline-6.3-patches/readline63-006
|
|
|
|
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
|
|
|
|
READLINE PATCH REPORT
|
|
=====================
|
|
|
|
Readline-Release: 6.3
|
|
Patch-ID: readline63-006
|
|
|
|
Bug-Reported-by: <Trond.Endrestol@ximalas.info>
|
|
Bug-Reference-ID: <alpine.BSF.2.03.1404192114310.1973@enterprise.ximalas.info>
|
|
Bug-Reference-URL: http://lists.gnu.org/archive/html/bug-bash/2014-04/msg00069.html
|
|
|
|
Bug-Description:
|
|
|
|
Using reverse-i-search when horizontal scrolling is enabled does not redisplay
|
|
the entire line containing the successful search results.
|
|
|
|
Patch (apply with `patch -p0'):
|
|
|
|
*** a/readline-6.3-patched/display.c 2014-04-08 18:19:36.000000000 -0400
|
|
--- b/display.c 2014-04-20 18:32:52.000000000 -0400
|
|
***************
|
|
*** 1638,1642 ****
|
|
the spot of first difference is before the end of the invisible chars,
|
|
lendiff needs to be adjusted. */
|
|
! if (current_line == 0 && !_rl_horizontal_scroll_mode &&
|
|
current_invis_chars != visible_wrap_offset)
|
|
{
|
|
--- 1638,1642 ----
|
|
the spot of first difference is before the end of the invisible chars,
|
|
lendiff needs to be adjusted. */
|
|
! if (current_line == 0 && /* !_rl_horizontal_scroll_mode && */
|
|
current_invis_chars != visible_wrap_offset)
|
|
{
|
|
***************
|
|
*** 1826,1831 ****
|
|
_rl_last_c_pos += bytes_to_insert;
|
|
|
|
if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
|
|
! goto clear_rest_of_line;
|
|
}
|
|
}
|
|
--- 1826,1836 ----
|
|
_rl_last_c_pos += bytes_to_insert;
|
|
|
|
+ /* XXX - we only want to do this if we are at the end of the line
|
|
+ so we move there with _rl_move_cursor_relative */
|
|
if (_rl_horizontal_scroll_mode && ((oe-old) > (ne-new)))
|
|
! {
|
|
! _rl_move_cursor_relative (ne-new, new);
|
|
! goto clear_rest_of_line;
|
|
! }
|
|
}
|
|
}
|
|
*** a/readline-6.3/patchlevel 2013-11-15 08:11:11.000000000 -0500
|
|
--- b/patchlevel 2014-03-21 08:28:40.000000000 -0400
|
|
***************
|
|
*** 1,3 ****
|
|
# Do not edit -- exists only for use by patch
|
|
|
|
! 5
|
|
--- 1,3 ----
|
|
# Do not edit -- exists only for use by patch
|
|
|
|
! 6
|