patch 8.1.1077: reg_executing() is reset by calling input()
Problem: reg_executing() is reset by calling input().
Solution: Implement a more generic way to save and restore reg_executing.
(Ozaki Kiichi, closes #4192)
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index f30d933..b253e9b 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -1699,6 +1699,7 @@
exarg_T ea; /* Ex command arguments */
int save_msg_scroll = msg_scroll;
cmdmod_T save_cmdmod;
+ int save_reg_executing = reg_executing;
int ni; /* set when Not Implemented */
char_u *cmd;
@@ -2579,6 +2580,7 @@
free_cmdmod();
cmdmod = save_cmdmod;
+ reg_executing = save_reg_executing;
if (ea.save_msg_silent != -1)
{