mirror of
git://slackware.nl/current.git
synced 2025-01-07 05:25:35 +01:00
61 lines
1.4 KiB
Text
61 lines
1.4 KiB
Text
|
READLINE PATCH REPORT
|
||
|
=====================
|
||
|
|
||
|
Readline-Release: 8.0
|
||
|
Patch-ID: readline80-002
|
||
|
|
||
|
Bug-Reported-by: lessbug@qq.com
|
||
|
Bug-Reference-ID: <tencent_6AA531D9A5CC4121D86BD5CDA2E0DA98C605@qq.com>
|
||
|
Bug-Reference-URL:
|
||
|
|
||
|
Bug-Description:
|
||
|
|
||
|
When using previous-history to go back beyond the beginning of the history list,
|
||
|
it's possible to move to an incorrect partial line.
|
||
|
|
||
|
Patch (apply with `patch -p0'):
|
||
|
|
||
|
*** ../readline-8.0-patched/misc.c 2017-07-07 17:30:12.000000000 -0400
|
||
|
--- misc.c 2019-05-16 11:43:46.000000000 -0400
|
||
|
***************
|
||
|
*** 577,580 ****
|
||
|
--- 590,594 ----
|
||
|
{
|
||
|
HIST_ENTRY *old_temp, *temp;
|
||
|
+ int had_saved_line;
|
||
|
|
||
|
if (count < 0)
|
||
|
***************
|
||
|
*** 589,592 ****
|
||
|
--- 603,607 ----
|
||
|
|
||
|
/* If we don't have a line saved, then save this one. */
|
||
|
+ had_saved_line = _rl_saved_line_for_history != 0;
|
||
|
rl_maybe_save_line ();
|
||
|
|
||
|
***************
|
||
|
*** 612,616 ****
|
||
|
if (temp == 0)
|
||
|
{
|
||
|
! rl_maybe_unsave_line ();
|
||
|
rl_ding ();
|
||
|
}
|
||
|
--- 627,632 ----
|
||
|
if (temp == 0)
|
||
|
{
|
||
|
! if (had_saved_line == 0)
|
||
|
! _rl_free_saved_history_line ();
|
||
|
rl_ding ();
|
||
|
}
|
||
|
*** ../readline-8.0/patchlevel 2013-11-15 08:11:11.000000000 -0500
|
||
|
--- patchlevel 2014-03-21 08:28:40.000000000 -0400
|
||
|
***************
|
||
|
*** 1,3 ****
|
||
|
# Do not edit -- exists only for use by patch
|
||
|
|
||
|
! 1
|
||
|
--- 1,3 ----
|
||
|
# Do not edit -- exists only for use by patch
|
||
|
|
||
|
! 2
|