Commit: patch 9.1.0707: [security]: invalid cursor position may cause a crash

10 views
Skip to first unread message

Christian Brabandt

unread,
Aug 31, 2024, 12:15:10 PM8/31/24
to vim...@googlegroups.com
patch 9.1.0707: [security]: invalid cursor position may cause a crash

Commit: https://github.com/vim/vim/commit/396fd1ec2956307755392a1c61f55d5c1847f308
Author: Christian Brabandt <c...@256bit.org>
Date: Sat Aug 31 17:58:16 2024 +0200

patch 9.1.0707: [security]: invalid cursor position may cause a crash

Problem: [security]: invalid cursor position may cause a crash
(after v9.1.0038)
Solution: Set cursor to the last character in a line, if it would
otherwise point to beyond the line; no tests added, as it
is unclear how to reproduce this.

Github Advisory:
https://github.com/vim/vim/security/advisories/GHSA-4ghr-c62x-cqfh

Co-authored-by: zeertzjq <zeer...@outlook.com>
Signed-off-by: zeertzjq <zeer...@outlook.com>
Signed-off-by: Christian Brabandt <c...@256bit.org>

diff --git a/src/charset.c b/src/charset.c
index 19b089526..399f25825 100644
--- a/src/charset.c
+++ b/src/charset.c
@@ -1678,6 +1678,9 @@ getvcol(
}
clear_chartabsize_arg(&cts);

+ if (*ptr == NUL && pos->col < MAXCOL && pos->col > ptr - line)
+ pos->col = ptr - line;
+
if (start != NULL)
*start = vcol + head;
if (end != NULL)
diff --git a/src/version.c b/src/version.c
index b88ec9de3..935b533ef 100644
--- a/src/version.c
+++ b/src/version.c
@@ -704,6 +704,8 @@ static char *(features[]) =

static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 707,
/**/
706,
/**/
Reply all
Reply to author
Forward
0 new messages