updated for version 7.4.527
Problem: Still confusing regexp failure and NFA_TOO_EXPENSIVE.
Solution: NFA changes equivalent of 7.4.526.
diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c
index 9131609..8e069f3 100644
--- a/src/regexp_nfa.c
+++ b/src/regexp_nfa.c
@@ -6767,7 +6767,7 @@
/*
* Try match of "prog" with at regline["col"].
- * Returns 0 for failure, number of lines contained in the match otherwise.
+ * Returns <= 0 for failure, number of lines contained in the match otherwise.
*/
static long
nfa_regtry(prog, col)
@@ -6897,7 +6897,7 @@
* Match a regexp against a string ("line" points to the string) or multiple
* lines ("line" is NULL, use reg_getline()).
*
- * Returns 0 for failure, number of lines contained in the match otherwise.
+ * Returns <= 0 for failure, number of lines contained in the match otherwise.
*/
static long
nfa_regexec_both(line, startcol)
@@ -7137,7 +7137,7 @@
* Uses curbuf for line count and 'iskeyword'.
* If "line_lbr" is TRUE consider a "\n" in "line" to be a line break.
*
- * Return TRUE if there is a match, FALSE if not.
+ * Returns <= 0 for failure, number of lines contained in the match otherwise.
*/
static int
nfa_regexec_nl(rmp, line, col, line_lbr)
@@ -7157,7 +7157,7 @@
ireg_icombine = FALSE;
#endif
ireg_maxcol = 0;
- return (nfa_regexec_both(line, col) != 0);
+ return nfa_regexec_both(line, col);
}
@@ -7166,7 +7166,7 @@
* "rmp->regprog" is a compiled regexp as returned by vim_regcomp().
* Uses curbuf for line count and 'iskeyword'.
*
- * Return zero if there is no match. Return number of lines contained in the
+ * Return <= 0 if there is no match. Return number of lines contained in the
* match otherwise.
*
* Note: the body is the same as bt_regexec() except for nfa_regexec_both()
diff --git a/src/version.c b/src/version.c
index 80e2d35..a3adca8 100644
--- a/src/version.c
+++ b/src/version.c
@@ -742,6 +742,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 527,
+/**/
526,
/**/
525,