summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBram Moolenaar <bram@vim.org>2014-03-12 19:41:55 +0100
committerBram Moolenaar <bram@vim.org>2014-03-12 19:41:55 +0100
commit1fd1d7c7fe4736693204cd37100696d34d17da99 (patch)
tree8b125a80ae526ea7bc22eabeb8a25de3b14d1816
parent74b4be3094c804b12722b057b798a9cb883c8c85 (diff)
downloadvim-1fd1d7c7fe4736693204cd37100696d34d17da99.tar.gz
updated for version 7.4.203v7.4.203v7-4-203
Problem: Parsing 'errorformat' is not correct. Solution: Reset "multiignore" at the start of a multi-line message. (Lcd)
-rw-r--r--src/quickfix.c3
-rw-r--r--src/testdir/Make_amiga.mak3
-rw-r--r--src/testdir/Make_dos.mak2
-rw-r--r--src/testdir/Make_ming.mak2
-rw-r--r--src/testdir/Make_os2.mak2
-rw-r--r--src/testdir/Make_vms.mms2
-rw-r--r--src/testdir/Makefile2
-rw-r--r--src/testdir/test106.in16
-rw-r--r--src/testdir/test106.ok4
-rw-r--r--src/version.c2
10 files changed, 32 insertions, 6 deletions
diff --git a/src/quickfix.c b/src/quickfix.c
index ebb02827..4451d89c 100644
--- a/src/quickfix.c
+++ b/src/quickfix.c
@@ -751,7 +751,10 @@ restofline:
fmt_start = fmt_ptr;
if (vim_strchr((char_u *)"AEWI", idx) != NULL)
+ {
multiline = TRUE; /* start of a multi-line message */
+ multiignore = FALSE; /* reset continuation */
+ }
else if (vim_strchr((char_u *)"CZ", idx) != NULL)
{ /* continuation of multi-line msg */
if (qfprev == NULL)
diff --git a/src/testdir/Make_amiga.mak b/src/testdir/Make_amiga.mak
index d7f503f2..40c62ecf 100644
--- a/src/testdir/Make_amiga.mak
+++ b/src/testdir/Make_amiga.mak
@@ -35,7 +35,7 @@ SCRIPTS = test1.out test3.out test4.out test5.out test6.out \
test89.out test90.out test91.out test92.out test93.out \
test94.out test95.out test96.out test97.out test98.out \
test99.out test100.out test101.out test102.out test103.out \
- test104.out test105.out
+ test104.out test105.out test106.out
.SUFFIXES: .in .out
@@ -157,3 +157,4 @@ test102.out: test102.in
test103.out: test103.in
test104.out: test104.in
test105.out: test105.in
+test106.out: test106.in
diff --git a/src/testdir/Make_dos.mak b/src/testdir/Make_dos.mak
index d26fe896..45b74b44 100644
--- a/src/testdir/Make_dos.mak
+++ b/src/testdir/Make_dos.mak
@@ -34,7 +34,7 @@ SCRIPTS = test3.out test4.out test5.out test6.out test7.out \
test89.out test90.out test91.out test92.out test93.out \
test94.out test95.out test96.out test98.out test99.out \
test100.out test101.out test102.out test103.out test104.out \
- test105.out
+ test105.out test106.out
SCRIPTS32 = test50.out test70.out
diff --git a/src/testdir/Make_ming.mak b/src/testdir/Make_ming.mak
index 0523ae48..9f0e0ab0 100644
--- a/src/testdir/Make_ming.mak
+++ b/src/testdir/Make_ming.mak
@@ -54,7 +54,7 @@ SCRIPTS = test3.out test4.out test5.out test6.out test7.out \
test89.out test90.out test91.out test92.out test93.out \
test94.out test95.out test96.out test98.out test99.out \
test100.out test101.out test102.out test103.out test104.out \
- test105.out
+ test105.out test106.out
SCRIPTS32 = test50.out test70.out
diff --git a/src/testdir/Make_os2.mak b/src/testdir/Make_os2.mak
index 65c09466..116c302b 100644
--- a/src/testdir/Make_os2.mak
+++ b/src/testdir/Make_os2.mak
@@ -36,7 +36,7 @@ SCRIPTS = test1.out test3.out test4.out test5.out test6.out \
test89.out test90.out test91.out test92.out test93.out \
test94.out test95.out test96.out test98.out test99.out \
test100.out test101.out test102.out test103.out test104.out \
- test105.out
+ test105.out test106.out
.SUFFIXES: .in .out
diff --git a/src/testdir/Make_vms.mms b/src/testdir/Make_vms.mms
index a20fa1fb..b210d504 100644
--- a/src/testdir/Make_vms.mms
+++ b/src/testdir/Make_vms.mms
@@ -95,7 +95,7 @@ SCRIPT = test1.out test2.out test3.out test4.out test5.out \
test90.out test91.out test92.out test93.out test94.out \
test95.out test96.out test98.out test99.out \
test100.out test101.out test103.out test104.out \
- test105.out
+ test105.out test106.out
# Known problems:
# test17: ?
diff --git a/src/testdir/Makefile b/src/testdir/Makefile
index 290200f9..c9e89222 100644
--- a/src/testdir/Makefile
+++ b/src/testdir/Makefile
@@ -31,7 +31,7 @@ SCRIPTS = test1.out test2.out test3.out test4.out test5.out test6.out \
test89.out test90.out test91.out test92.out test93.out \
test94.out test95.out test96.out test97.out test98.out \
test99.out test100.out test101.out test102.out test103.out \
- test104.out test105.out
+ test104.out test105.out test106.out
SCRIPTS_GUI = test16.out
diff --git a/src/testdir/test106.in b/src/testdir/test106.in
new file mode 100644
index 00000000..eb99e650
--- /dev/null
+++ b/src/testdir/test106.in
@@ -0,0 +1,16 @@
+Tests for errorformat. vim: set ft=vim ts=8 :
+
+STARTTEST
+:so small.vim
+:if !has('quickfix') | e! test.ok | wq! test.out | endif
+:set efm=%EEEE%m,%WWWW%m,%+CCCC%.%#,%-GGGG%.%#
+:cgetexpr ['WWWW', 'EEEE', 'CCCC']
+:$put =strtrans(string(map(getqflist(), '[v:val.text, v:val.valid]')))
+:cgetexpr ['WWWW', 'GGGG', 'EEEE', 'CCCC']
+:$put =strtrans(string(map(getqflist(), '[v:val.text, v:val.valid]')))
+:cgetexpr ['WWWW', 'GGGG', 'ZZZZ', 'EEEE', 'CCCC', 'YYYY']
+:$put =strtrans(string(map(getqflist(), '[v:val.text, v:val.valid]')))
+:/^Results/,$wq! test.out
+ENDTEST
+
+Results of test106:
diff --git a/src/testdir/test106.ok b/src/testdir/test106.ok
new file mode 100644
index 00000000..0a18cecf
--- /dev/null
+++ b/src/testdir/test106.ok
@@ -0,0 +1,4 @@
+Results of test106:
+[['W', 1], ['E^@CCCC', 1]]
+[['W', 1], ['E^@CCCC', 1]]
+[['W', 1], ['ZZZZ', 0], ['E^@CCCC', 1], ['YYYY', 0]]
diff --git a/src/version.c b/src/version.c
index 2b81f497..112e168e 100644
--- a/src/version.c
+++ b/src/version.c
@@ -739,6 +739,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 203,
+/**/
202,
/**/
201,