Problem: Cannot set the valid flag with setqflist().
Solution: Add the "valid" argument. (Yegappan Lakshmanan, closes #1642)
nr error number
text description of the error
type single-character error type, 'E', 'W', etc.
+ valid recognized error message
The "col", "vcol", "nr", "type" and "text" entries are
optional. Either "lnum" or "pattern" entry can be used to
item will not be handled as an error line.
If both "pattern" and "lnum" are present then "pattern" will
be used.
+ If the "valid" entry is not supplied, then the valid flag is
+ set when "bufnr" is a valid buffer or "filename" exists.
If you supply an empty {list}, the quickfix list will be
cleared.
Note that the list is not exactly the same as what
bufnum = 0;
}
+ /* If the 'valid' field is present it overrules the detected value. */
+ if ((dict_find(d, (char_u *)"valid", -1)) != NULL)
+ valid = (int)get_dict_number(d, (char_u *)"valid");
+
status = qf_add_entry(qi,
NULL, /* dir */
filename,
let l = g:Xgetlist()
call assert_equal(0, len(l))
+ " Tests for setting the 'valid' flag
+ call g:Xsetlist([{'bufnr':a:bnum, 'lnum':4, 'valid':0}])
+ Xwindow
+ call assert_equal(1, winnr('$'))
+ let l = g:Xgetlist()
+ call g:Xsetlist(l)
+ call assert_equal(0, g:Xgetlist()[0].valid)
+ call g:Xsetlist([{'text':'Text1', 'valid':1}])
+ Xwindow
+ call assert_equal(2, winnr('$'))
+ Xclose
+ let save_efm = &efm
+ set efm=%m
+ Xgetexpr 'TestMessage'
+ let l = g:Xgetlist()
+ call g:Xsetlist(l)
+ call assert_equal(1, g:Xgetlist()[0].valid)
+ let &efm = save_efm
+
" Error cases:
" Refer to a non-existing buffer and pass a non-dictionary type
call assert_fails("call g:Xsetlist([{'bufnr':998, 'lnum':4}," .
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 580,
/**/
579,
/**/