summaryrefslogtreecommitdiff
path: root/src/move.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2022-09-24 19:20:30 +0100
committerBram Moolenaar <Bram@vim.org>2022-09-24 19:20:30 +0100
commit0ff01835a40f549c5c4a550502f62a2ac9ac447c (patch)
treeb960fbf355eb410814b87b37a4416e0022d3edd3 /src/move.c
parent865bf2ed3039deeaa66312319f3e13db146a9701 (diff)
downloadvim-git-0ff01835a40f549c5c4a550502f62a2ac9ac447c.tar.gz
patch 9.0.0579: using freed memory when 'tagfunc' wipes out bufferv9.0.0579
Problem: Using freed memory when 'tagfunc' wipes out buffer that holds 'complete'. Solution: Make a copy of the option. Make sure cursor position is valid.
Diffstat (limited to 'src/move.c')
-rw-r--r--src/move.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/move.c b/src/move.c
index a51d2d128..967dd77fb 100644
--- a/src/move.c
+++ b/src/move.c
@@ -683,6 +683,7 @@ cursor_valid(void)
void
validate_cursor(void)
{
+ check_cursor();
check_cursor_moved(curwin);
if ((curwin->w_valid & (VALID_WCOL|VALID_WROW)) != (VALID_WCOL|VALID_WROW))
curs_columns(TRUE);