From: Bram Moolenaar Date: Tue, 30 Jun 2020 20:11:44 +0000 (+0200) Subject: patch 8.2.1101: no error when using wrong arguments for setqflist() X-Git-Tag: v8.2.1101 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F6361%2Fhead;p=thirdparty%2Fvim.git patch 8.2.1101: no error when using wrong arguments for setqflist() Problem: No error when using wrong arguments for setqflist() or setloclist(). Solution: Check for the error. --- diff --git a/src/quickfix.c b/src/quickfix.c index 3bd0f75e24..091246b764 100644 --- a/src/quickfix.c +++ b/src/quickfix.c @@ -7400,6 +7400,14 @@ set_errorlist( return OK; } + // A dict argument cannot be specified with a non-empty list argument + if (list != NULL && list->lv_len != 0 && what != NULL) + { + semsg(_(e_invarg2), + _("cannot have both a list and a \"what\" argument")); + return FAIL; + } + incr_quickfix_busy(); if (what != NULL) diff --git a/src/testdir/test_quickfix.vim b/src/testdir/test_quickfix.vim index 608a9553b8..6d119fe3e3 100644 --- a/src/testdir/test_quickfix.vim +++ b/src/testdir/test_quickfix.vim @@ -2360,6 +2360,9 @@ func Xproperty_tests(cchar) call assert_equal(['Colors'], newl2.context) call assert_equal('Line10', newl2.items[0].text) call g:Xsetlist([], 'f') + + " Cannot specify both a non-empty list argument and a dict argument + call assert_fails("call g:Xsetlist([{}], ' ', {})", 'E475:') endfunc func Test_qf_property() diff --git a/src/version.c b/src/version.c index 9da21730d2..f1b0be6f69 100644 --- a/src/version.c +++ b/src/version.c @@ -754,6 +754,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1101, /**/ 1100, /**/