diff --git a/src/eval.c b/src/eval.c
index 7b7302f..3786adf 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -24365,7 +24365,7 @@
     garray_T	ga;
     char_u	*ret;
     char_u	*save_cpo;
-    int		zero_width;
+    char_u	*zero_width = NULL;
 
     /* Make 'cpoptions' empty, so that the 'l' flag doesn't work here */
     save_cpo = p_cpo;
@@ -24382,6 +24382,19 @@
 	tail = str;
 	while (vim_regexec_nl(&regmatch, str, (colnr_T)(tail - str)))
 	{
+	    /* Skip empty match except for first match. */
+	    if (regmatch.startp[0] == regmatch.endp[0])
+	    {
+		if (zero_width == regmatch.startp[0])
+		{
+		    /* avoid getting stuck on a match with an empty string */
+		    *((char_u *)ga.ga_data + ga.ga_len) = *tail++;
+		    ++ga.ga_len;
+		    continue;
+		}
+		zero_width = regmatch.startp[0];
+	    }
+
 	    /*
 	     * Get some space for a temporary buffer to do the substitution
 	     * into.  It will contain:
@@ -24404,17 +24417,9 @@
 	    (void)vim_regsub(&regmatch, sub, (char_u *)ga.ga_data
 					  + ga.ga_len + i, TRUE, TRUE, FALSE);
 	    ga.ga_len += i + sublen - 1;
-	    zero_width = (tail == regmatch.endp[0]
-				    || regmatch.startp[0] == regmatch.endp[0]);
 	    tail = regmatch.endp[0];
 	    if (*tail == NUL)
 		break;
-	    if (zero_width)
-	    {
-		/* avoid getting stuck on a match with an empty string */
-		*((char_u *)ga.ga_data + ga.ga_len) = *tail++;
-		++ga.ga_len;
-	    }
 	    if (!do_all)
 		break;
 	}
