Module Name: src
Committed By: christos
Date: Sun Jun 30 17:11:27 UTC 2024
Modified Files:
src/lib/libedit: refresh.c
Log Message:
Handle the case where the cursor is on the first character.
set -o vi
x ESC ~
(Robert Morris)
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=279545
To generate a diff of this commit:
cvs rdiff -u -r1.58 -r1.59 src/lib/libedit/refresh.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/lib/libedit/refresh.c
diff -u src/lib/libedit/refresh.c:1.58 src/lib/libedit/refresh.c:1.59
--- src/lib/libedit/refresh.c:1.58 Thu Sep 9 16:24:07 2021
+++ src/lib/libedit/refresh.c Sun Jun 30 13:11:27 2024
@@ -1,4 +1,4 @@
-/* $NetBSD: refresh.c,v 1.58 2021/09/09 20:24:07 christos Exp $ */
+/* $NetBSD: refresh.c,v 1.59 2024/06/30 17:11:27 christos Exp $ */
/*-
* Copyright (c) 1992, 1993
@@ -37,7 +37,7 @@
#if 0
static char sccsid[] = "@(#)refresh.c 8.1 (Berkeley) 6/4/93";
#else
-__RCSID("$NetBSD: refresh.c,v 1.58 2021/09/09 20:24:07 christos Exp $");
+__RCSID("$NetBSD: refresh.c,v 1.59 2024/06/30 17:11:27 christos Exp $");
#endif
#endif /* not lint && not SCCSID */
@@ -1155,6 +1155,10 @@ re_fastaddc(EditLine *el)
wchar_t c;
int rhdiff;
+ if (el->el_line.cursor == el->el_line.buffer) {
+ re_refresh(el);
+ return;
+ }
c = el->el_line.cursor[-1];
if (c == '\t' || el->el_line.cursor != el->el_line.lastchar) {