Mercurial > vim
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(®match, IObuff, (colnr_T)0)) | 612 r = vim_regexec(®match, 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; |