summaryrefslogtreecommitdiffstats
path: root/source/l/readline/readline-8.0-patches/readline80-002
diff options
context:
space:
mode:
Diffstat (limited to 'source/l/readline/readline-8.0-patches/readline80-002')
-rw-r--r--source/l/readline/readline-8.0-patches/readline80-00260
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 000000000..7923d9d16
--- /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