diff src/normal.c @ 14004:e124262d435e v8.1.0020

patch 8.1.0020: cannot tell whether a register is executing or recording commit https://github.com/vim/vim/commit/0b6d911e5de1a1c10a23d4c2ee1b0275c474a2dd Author: Bram Moolenaar <Bram@vim.org> Date: Tue May 22 20:35:17 2018 +0200 patch 8.1.0020: cannot tell whether a register is executing or recording Problem: Cannot tell whether a register is being used for executing or recording. Solution: Add reg_executing() and reg_recording(). (Hirohito Higashi, closes #2745) Rename the global variables for consistency. Store the register name in reg_executing.
author Christian Brabandt <cb@256bit.org>
date Tue, 22 May 2018 20:45:05 +0200
parents 156ebdcb8ef5
children dc67449d648c
line wrap: on
line diff
--- a/src/normal.c
+++ b/src/normal.c
@@ -871,8 +871,8 @@ getcount:
 		|| (nv_cmds[idx].cmd_flags & NV_NCH_ALW) == NV_NCH_ALW
 		|| (ca.cmdchar == 'q'
 		    && oap->op_type == OP_NOP
-		    && !Recording
-		    && !Exec_reg)
+		    && reg_recording == 0
+		    && reg_executing == 0)
 		|| ((ca.cmdchar == 'a' || ca.cmdchar == 'i')
 		    && (oap->op_type != OP_NOP || VIsual_active))))
     {
@@ -9324,7 +9324,7 @@ nv_record(cmdarg_T *cap)
 #endif
 	    /* (stop) recording into a named register, unless executing a
 	     * register */
-	    if (!Exec_reg && do_record(cap->nchar) == FAIL)
+	    if (reg_executing == 0 && do_record(cap->nchar) == FAIL)
 		clearopbeep(cap->oap);
     }
 }