To: vim_dev@googlegroups.com Subject: Patch 7.3.205 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 7.3.205 Problem: Syntax "extend" doesn't work correctly. Solution: Avoid calling check_state_ends() recursively (Ben Schmidt) Files: src/syntax.c *** ../mercurial/vim73/src/syntax.c 2011-05-19 12:14:03.000000000 +0200 --- src/syntax.c 2011-05-25 17:47:46.000000000 +0200 *************** *** 990,996 **** --- 990,999 ---- * previous line and regions that have "keepend". */ if (current_state.ga_len > 0) + { syn_update_ends(TRUE); + check_state_ends(); + } next_match_idx = -1; ++current_line_id; *************** *** 1064,1070 **** } } check_keepend(); - check_state_ends(); } /**************************************** --- 1067,1072 ---- *************** *** 2533,2539 **** check_state_ends() { stateitem_T *cur_si; ! int had_extend = FALSE; cur_si = &CUR_STATE(current_state.ga_len - 1); for (;;) --- 2535,2541 ---- check_state_ends() { stateitem_T *cur_si; ! int had_extend; cur_si = &CUR_STATE(current_state.ga_len - 1); for (;;) *************** *** 2586,2593 **** /* When the ended item has "extend", another item with * "keepend" now needs to check for its end. */ ! if (cur_si->si_flags & HL_EXTEND) ! had_extend = TRUE; pop_current_state(); --- 2588,2594 ---- /* When the ended item has "extend", another item with * "keepend" now needs to check for its end. */ ! had_extend = (cur_si->si_flags & HL_EXTEND); pop_current_state(); *** ../vim-7.3.204/src/version.c 2011-05-25 17:29:40.000000000 +0200 --- src/version.c 2011-05-25 17:52:57.000000000 +0200 *************** *** 711,712 **** --- 711,714 ---- { /* Add new patch number below this line */ + /**/ + 205, /**/ -- hundred-and-one symptoms of being an internet addict: 110. You actually volunteer to become your employer's webmaster. /// 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 ///