diff src/normal.c @ 12164:5d82470552ce v8.0.0962

patch 8.0.0962: crash with virtualedit and joining lines commit https://github.com/vim/vim/commit/9aa156912867c05e0a6480925afe11c590378f09 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Aug 19 15:05:32 2017 +0200 patch 8.0.0962: crash with virtualedit and joining lines Problem: Crash with virtualedit and joining lines. (Joshua T Corbin, Neovim https://github.com/vim/vim/issues/6726) Solution: When using a mark check that coladd is valid.
author Christian Brabandt <cb@256bit.org>
date Sat, 19 Aug 2017 15:15:03 +0200
parents 60cf03e59402
children 55cf556d8ce1
line wrap: on
line diff
--- a/src/normal.c
+++ b/src/normal.c
@@ -1571,7 +1571,12 @@ do_pending_operator(cmdarg_T *cap, int o
 
 	    oap->start = VIsual;
 	    if (VIsual_mode == 'V')
+	    {
 		oap->start.col = 0;
+# ifdef FEAT_VIRTUALEDIT
+		oap->start.coladd = 0;
+# endif
+	    }
 	}
 
 	/*
@@ -7580,6 +7585,7 @@ nv_gomark(cmdarg_T *cap)
     if (!virtual_active())
 	curwin->w_cursor.coladd = 0;
 #endif
+    check_cursor_col();
 #ifdef FEAT_FOLDING
     if (cap->oap->op_type == OP_NOP
 	    && pos != NULL