comparison src/quickfix.c @ 6450:7e4c22ecc679 v7.4.554

updated for version 7.4.554 Problem: Missing part of patch 7.4.519. Solution: Copy back regprog after calling vim_regexec.
author Bram Moolenaar <bram@vim.org>
date Wed, 17 Dec 2014 14:41:10 +0100
parents 16cfdf28be40
children 7347229a646a
comparison
equal deleted inserted replaced
6449:93e9101dd543 6450:7e4c22ecc679
590 */ 590 */
591 valid = TRUE; 591 valid = TRUE;
592 restofline: 592 restofline:
593 for ( ; fmt_ptr != NULL; fmt_ptr = fmt_ptr->next) 593 for ( ; fmt_ptr != NULL; fmt_ptr = fmt_ptr->next)
594 { 594 {
595 int r;
596
595 idx = fmt_ptr->prefix; 597 idx = fmt_ptr->prefix;
596 if (multiscan && vim_strchr((char_u *)"OPQ", idx) == NULL) 598 if (multiscan && vim_strchr((char_u *)"OPQ", idx) == NULL)
597 continue; 599 continue;
598 namebuf[0] = NUL; 600 namebuf[0] = NUL;
599 pattern[0] = NUL; 601 pattern[0] = NUL;
605 enr = -1; 607 enr = -1;
606 type = 0; 608 type = 0;
607 tail = NULL; 609 tail = NULL;
608 610
609 regmatch.regprog = fmt_ptr->prog; 611 regmatch.regprog = fmt_ptr->prog;
610 if (vim_regexec(&regmatch, IObuff, (colnr_T)0)) 612 r = vim_regexec(&regmatch, IObuff, (colnr_T)0);
613 fmt_ptr->prog = regmatch.regprog;
614 if (r)
611 { 615 {
612 if ((idx == 'C' || idx == 'Z') && !multiline) 616 if ((idx == 'C' || idx == 'Z') && !multiline)
613 continue; 617 continue;
614 if (vim_strchr((char_u *)"EWI", idx) != NULL) 618 if (vim_strchr((char_u *)"EWI", idx) != NULL)
615 type = idx; 619 type = idx;