diff options
author | Justin M. Keyes <justinkz@gmail.com> | 2018-09-30 14:48:29 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-09-30 14:48:29 +0200 |
commit | c6d36b97bac0df86c1120af323db1b577dc90629 (patch) | |
tree | 12d8c060ba3d23e5470bd4cbb8a7ecea1ff4f938 /src/nvim/eval.c | |
parent | 6e146d413267de044a1f9f0bbb0290b5387e631c (diff) | |
parent | 9dcd5bd9c5272e28f7f52f579b74381e46ce827d (diff) | |
download | rneovim-c6d36b97bac0df86c1120af323db1b577dc90629.tar.gz rneovim-c6d36b97bac0df86c1120af323db1b577dc90629.tar.bz2 rneovim-c6d36b97bac0df86c1120af323db1b577dc90629.zip |
Merge #9067 from janlazo/vim-8.0.1485
Diffstat (limited to 'src/nvim/eval.c')
-rw-r--r-- | src/nvim/eval.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c index 44560792f0..41a9eeeb40 100644 --- a/src/nvim/eval.c +++ b/src/nvim/eval.c @@ -14664,6 +14664,7 @@ static void set_qf_ll_list(win_T *wp, typval_T *args, typval_T *rettv) static char *e_invact = N_("E927: Invalid action: '%s'"); const char *title = NULL; int action = ' '; + static int recursive = 0; rettv->vval.v_number = -1; dict_T *d = NULL; @@ -14671,6 +14672,9 @@ static void set_qf_ll_list(win_T *wp, typval_T *args, typval_T *rettv) if (list_arg->v_type != VAR_LIST) { EMSG(_(e_listreq)); return; + } else if (recursive != 0) { + EMSG(_(e_au_recursive)); + return; } typval_T *action_arg = &args[1]; @@ -14712,10 +14716,12 @@ skip_args: title = (wp ? "setloclist()" : "setqflist()"); } + recursive++; list_T *const l = list_arg->vval.v_list; if (set_errorlist(wp, l, action, (char_u *)title, d) == OK) { rettv->vval.v_number = 0; } + recursive--; } /* |