aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/quickfix.c
diff options
context:
space:
mode:
authorJan Edmund Lazo <janedmundlazo@hotmail.com>2018-09-08 09:38:14 -0400
committerJan Edmund Lazo <janedmundlazo@hotmail.com>2018-09-08 10:43:30 -0400
commit1790f81f56087e45f24e82fb8d5f99a9e0f59d49 (patch)
tree704526b74328fad6b1743a29b11fafcdf7cf27f7 /src/nvim/quickfix.c
parent9bf2741ba4dda8f7b0864858daaad52e596dd856 (diff)
downloadrneovim-1790f81f56087e45f24e82fb8d5f99a9e0f59d49.tar.gz
rneovim-1790f81f56087e45f24e82fb8d5f99a9e0f59d49.tar.bz2
rneovim-1790f81f56087e45f24e82fb8d5f99a9e0f59d49.zip
vim-patch:8.0.1029: return value of getqflist() is inconsistent
Problem: Return value of getqflist() is inconsistent. (Lcd47) Solution: Always return an "items" entry. https://github.com/vim/vim/commit/da73253a0b908bad03ddcd625fe3fb32008efbf6
Diffstat (limited to 'src/nvim/quickfix.c')
-rw-r--r--src/nvim/quickfix.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/nvim/quickfix.c b/src/nvim/quickfix.c
index 1c03bd2d42..ec11e5d849 100644
--- a/src/nvim/quickfix.c
+++ b/src/nvim/quickfix.c
@@ -4131,19 +4131,20 @@ static int qf_get_list_from_text(dictitem_T *di, dict_T *retdict)
&& di->di_tv.vval.v_string != NULL)
|| (di->di_tv.v_type == VAR_LIST
&& di->di_tv.vval.v_list != NULL)) {
+ list_T *l = tv_list_alloc(kListLenMayKnow);
qf_info_T *qi = xmalloc(sizeof(*qi));
memset(qi, 0, sizeof(*qi));
qi->qf_refcount++;
if (qf_init_ext(qi, 0, NULL, NULL, &di->di_tv, p_efm,
true, (linenr_T)0, (linenr_T)0, NULL, NULL) > 0) {
- list_T *l = tv_list_alloc(kListLenMayKnow);
(void)get_errorlist(qi, NULL, 0, l);
- tv_dict_add_list(retdict, S_LEN("items"), l);
- status = OK;
qf_free(qi, 0);
}
xfree(qi);
+
+ tv_dict_add_list(retdict, S_LEN("items"), l);
+ status = OK;
}
return status;