From 4f56804957f4bcff4380813618cb6311a70f196e Mon Sep 17 00:00:00 2001 From: Karsten Hopp Date: Jun 13 2013 22:28:17 +0000 Subject: - patchlevel 1132 --- diff --git a/7.3.1132 b/7.3.1132 new file mode 100644 index 0000000..d7ac4a3 --- /dev/null +++ b/7.3.1132 @@ -0,0 +1,87 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.3.1132 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.3.1132 +Problem: Crash when debugging regexp. +Solution: Do not try to dump subexpr that were not set. Skip over count of + \% items. +Files: src/regexp.c, src/regexp_nfa.c + + +*** ../vim-7.3.1131/src/regexp.c 2013-06-05 21:42:49.000000000 +0200 +--- src/regexp.c 2013-06-06 18:04:09.000000000 +0200 +*************** +*** 6548,6553 **** +--- 6548,6559 ---- + fprintf(f, " count %ld", OPERAND_MIN(s)); + s += 4; + } ++ else if (op == RE_LNUM || op == RE_COL || op == RE_VCOL) ++ { ++ /* one int plus comperator */ ++ fprintf(f, " count %ld", OPERAND_MIN(s)); ++ s += 5; ++ } + s += 3; + if (op == ANYOF || op == ANYOF + ADD_NL + || op == ANYBUT || op == ANYBUT + ADD_NL +*** ../vim-7.3.1131/src/regexp_nfa.c 2013-06-06 16:22:01.000000000 +0200 +--- src/regexp_nfa.c 2013-06-06 18:03:27.000000000 +0200 +*************** +*** 256,262 **** + /* 0 for first call to nfa_regmatch(), 1 for recursive call. */ + static int nfa_ll_index = 0; + +! static int nfa_regcomp_start __ARGS((char_u*expr, int re_flags)); + static int nfa_recognize_char_class __ARGS((char_u *start, char_u *end, int extra_newl)); + static int nfa_emit_equi_class __ARGS((int c, int neg)); + static int nfa_regatom __ARGS((void)); +--- 256,262 ---- + /* 0 for first call to nfa_regmatch(), 1 for recursive call. */ + static int nfa_ll_index = 0; + +! static int nfa_regcomp_start __ARGS((char_u *expr, int re_flags)); + static int nfa_recognize_char_class __ARGS((char_u *start, char_u *end, int extra_newl)); + static int nfa_emit_equi_class __ARGS((int c, int neg)); + static int nfa_regatom __ARGS((void)); +*************** +*** 2927,2933 **** + { + log_subexpr(&subs->norm); + # ifdef FEAT_SYN_HL +! log_subexpr(&subs->synt); + # endif + } + +--- 2927,2934 ---- + { + log_subexpr(&subs->norm); + # ifdef FEAT_SYN_HL +! if (nfa_has_zsubexpr) +! log_subexpr(&subs->synt); + # endif + } + +*** ../vim-7.3.1131/src/version.c 2013-06-06 16:22:01.000000000 +0200 +--- src/version.c 2013-06-06 17:58:00.000000000 +0200 +*************** +*** 730,731 **** +--- 730,733 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 1132, + /**/ + +-- +Momento mori, ergo carpe diem + + /// 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 ///