patch 7.4.715
Problem:    Invalid memory access when there are illegal bytes.
Solution:   Get the length from the text, not from the character. (Dominique
            Pelle)
diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c
index 825f960..bb55a71 100644
--- a/src/regexp_nfa.c
+++ b/src/regexp_nfa.c
@@ -6602,7 +6602,7 @@
 		/* If ireg_icombine is not set only skip over the character
 		 * itself.  When it is set skip over composing characters. */
 		if (result && enc_utf8 && !ireg_icombine)
-		    clen = utf_char2len(curc);
+		    clen = utf_ptr2len(reginput);
 #endif
 		ADD_STATE_IF_MATCH(t->state);
 		break;