diff options
-rw-r--r-- | src/quickfix.c | 14 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 10 insertions, 6 deletions
diff --git a/src/quickfix.c b/src/quickfix.c index 091246b764..a7d211822a 100644 --- a/src/quickfix.c +++ b/src/quickfix.c @@ -7374,6 +7374,7 @@ qf_free_stack(win_T *wp, qf_info_T *qi) * Populate the quickfix list with the items supplied in the list * of dictionaries. "title" will be copied to w:quickfix_title. * "action" is 'a' for add, 'r' for replace. Otherwise create a new list. + * When "what" is not NULL then only set some properties. */ int set_errorlist( @@ -7401,7 +7402,7 @@ set_errorlist( } // A dict argument cannot be specified with a non-empty list argument - if (list != NULL && list->lv_len != 0 && what != NULL) + if (list->lv_len != 0 && what != NULL) { semsg(_(e_invarg2), _("cannot have both a list and a \"what\" argument")); @@ -8106,7 +8107,7 @@ set_qf_ll_list( else { list_T *l = list_arg->vval.v_list; - dict_T *d = NULL; + dict_T *what = NULL; int valid_dict = TRUE; if (action_arg->v_type == VAR_STRING) @@ -8128,8 +8129,8 @@ set_qf_ll_list( if (action_arg->v_type != VAR_UNKNOWN && what_arg->v_type != VAR_UNKNOWN) { - if (what_arg->v_type == VAR_DICT) - d = what_arg->vval.v_dict; + if (what_arg->v_type == VAR_DICT && what_arg->vval.v_dict != NULL) + what = what_arg->vval.v_dict; else { emsg(_(e_dictreq)); @@ -8138,9 +8139,10 @@ set_qf_ll_list( } ++recursive; - if (l != NULL && action && valid_dict && set_errorlist(wp, l, action, + if (l != NULL && action && valid_dict + && set_errorlist(wp, l, action, (char_u *)(wp == NULL ? ":setqflist()" : ":setloclist()"), - d) == OK) + what) == OK) rettv->vval.v_number = 0; --recursive; } diff --git a/src/version.c b/src/version.c index f1b0be6f69..26eb42a405 100644 --- a/src/version.c +++ b/src/version.c @@ -755,6 +755,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1102, +/**/ 1101, /**/ 1100, |