diff src/getchar.c @ 14009:830a47e48791 v8.1.0022

patch 8.1.0022: repeating put from expression register fails commit https://github.com/vim/vim/commit/833093bfb0e4a7f89b5adc66babcfa8ac09cfda9 Author: Bram Moolenaar <Bram@vim.org> Date: Wed May 23 21:53:52 2018 +0200 patch 8.1.0022: repeating put from expression register fails Problem: Repeating put from expression register fails. Solution: Re-evaluate the expression register. (Andy Massimino, closes #2945)
author Christian Brabandt <cb@256bit.org>
date Wed, 23 May 2018 22:00:06 +0200
parents e124262d435e
children bc91de20ba43
line wrap: on
line diff
--- a/src/getchar.c
+++ b/src/getchar.c
@@ -844,6 +844,14 @@ start_redo(long count, int old_redo)
 	if (c >= '1' && c < '9')
 	    ++c;
 	add_char_buff(&readbuf2, c);
+
+	/* the expression register should be re-evaluated */
+	if (c == '=')
+	{
+	    add_char_buff(&readbuf2, CAR);
+	    cmd_silent = TRUE;
+	}
+
 	c = read_redo(FALSE, old_redo);
     }