From fd0342e2b2d22d35a6bc064ae0f56f4e76f45df9 Mon Sep 17 00:00:00 2001 From: Karsten Hopp Date: Nov 23 2014 17:00:09 +0000 Subject: - patchlevel 527 --- diff --git a/7.4.527 b/7.4.527 new file mode 100644 index 0000000..ac2edcf --- /dev/null +++ b/7.4.527 @@ -0,0 +1,120 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.4.527 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.4.527 +Problem: Still confusing regexp failure and NFA_TOO_EXPENSIVE. +Solution: NFA changes equivalent of 7.4.526. +Files: src/regexp_nfa.c + + +*** ../vim-7.4.526/src/regexp_nfa.c 2014-11-05 14:26:30.764758363 +0100 +--- src/regexp_nfa.c 2014-11-23 15:50:57.980625347 +0100 +*************** +*** 6767,6773 **** + + /* + * Try match of "prog" with at regline["col"]. +! * Returns 0 for failure, number of lines contained in the match otherwise. + */ + static long + nfa_regtry(prog, col) +--- 6767,6773 ---- + + /* + * Try match of "prog" with at regline["col"]. +! * Returns <= 0 for failure, number of lines contained in the match otherwise. + */ + static long + nfa_regtry(prog, col) +*************** +*** 6897,6903 **** + * 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. + */ + static long + nfa_regexec_both(line, startcol) +--- 6897,6903 ---- + * 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. + */ + static long + nfa_regexec_both(line, startcol) +*************** +*** 7137,7143 **** + * 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. + */ + static int + nfa_regexec_nl(rmp, line, col, line_lbr) +--- 7137,7143 ---- + * Uses curbuf for line count and 'iskeyword'. + * If "line_lbr" is TRUE consider a "\n" in "line" to be a line break. + * +! * Returns <= 0 for failure, number of lines contained in the match otherwise. + */ + static int + nfa_regexec_nl(rmp, line, col, line_lbr) +*************** +*** 7157,7163 **** + ireg_icombine = FALSE; + #endif + ireg_maxcol = 0; +! return (nfa_regexec_both(line, col) != 0); + } + + +--- 7157,7163 ---- + ireg_icombine = FALSE; + #endif + ireg_maxcol = 0; +! return nfa_regexec_both(line, col); + } + + +*************** +*** 7166,7172 **** + * "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 + * match otherwise. + * + * Note: the body is the same as bt_regexec() except for nfa_regexec_both() +--- 7166,7172 ---- + * "rmp->regprog" is a compiled regexp as returned by vim_regcomp(). + * Uses curbuf for line count and 'iskeyword'. + * +! * 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() +*** ../vim-7.4.526/src/version.c 2014-11-20 23:07:00.515474686 +0100 +--- src/version.c 2014-11-23 15:53:23.170981186 +0100 +*************** +*** 743,744 **** +--- 743,746 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 527, + /**/ + +-- +"I know that there are people who don't love their fellow man, +and I hate those people!" - Tom Lehrer + + /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ +/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ +\\\ an exciting new programming language -- http://www.Zimbu.org /// + \\\ help me help AIDS victims -- http://ICCF-Holland.org ///