diff options
Diffstat (limited to 'source/l/readline/readline-8.0-patches/readline80-002')
-rw-r--r-- | source/l/readline/readline-8.0-patches/readline80-002 | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/source/l/readline/readline-8.0-patches/readline80-002 b/source/l/readline/readline-8.0-patches/readline80-002 new file mode 100644 index 00000000..7923d9d1 --- /dev/null +++ b/source/l/readline/readline-8.0-patches/readline80-002 @@ -0,0 +1,60 @@ + 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 |