Mercurial > vim
diff src/register.c @ 28988:e6f486df5cc9 v8.2.5016
patch 8.2.5016: access before start of text with a put command
Commit: https://github.com/vim/vim/commit/2a585c85013be22f59f184d49612074fd9b115d7
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed May 25 15:15:38 2022 +0100
patch 8.2.5016: access before start of text with a put command
Problem: Access before start of text with a put command.
Solution: Check the length is more than zero.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 25 May 2022 16:30:02 +0200 |
parents | 6cdf55afaae9 |
children | 45c182c4f7e9 |
line wrap: on
line diff
--- a/src/register.c +++ b/src/register.c @@ -2219,9 +2219,12 @@ error: len = STRLEN(y_array[y_size - 1]); col = (colnr_T)len - lendiff; if (col > 1) - curbuf->b_op_end.col = col - 1 - - mb_head_off(y_array[y_size - 1], + { + curbuf->b_op_end.col = col - 1; + if (len > 0) + curbuf->b_op_end.col -= mb_head_off(y_array[y_size - 1], y_array[y_size - 1] + len - 1); + } else curbuf->b_op_end.col = 0;