summaryrefslogtreecommitdiff
path: root/src/quickfix.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2017-04-20 22:44:47 +0200
committerBram Moolenaar <Bram@vim.org>2017-04-20 22:44:47 +0200
commit99895eac1cf71be43ece7e14b50e206e041fbe9f (patch)
treec6ae6674aff5225d671b1db33e85289efee98465 /src/quickfix.c
parent91b6e4591a839139f720798a2efbe83b2ecf8446 (diff)
downloadvim-git-99895eac1cf71be43ece7e14b50e206e041fbe9f.tar.gz
patch 8.0.0574: get only one quickfix list after :caddbufv8.0.0574
Problem: Get only one quickfix list after :caddbuf. Solution: Reset qf_multiline. (Yegappan Lakshmanan)
Diffstat (limited to 'src/quickfix.c')
-rw-r--r--src/quickfix.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/quickfix.c b/src/quickfix.c
index d2921b21c..b28a321f3 100644
--- a/src/quickfix.c
+++ b/src/quickfix.c
@@ -2750,12 +2750,18 @@ qf_free(qf_info_T *qi, int idx)
vim_free(qi->qf_lists[idx].qf_title);
qi->qf_lists[idx].qf_title = NULL;
qi->qf_lists[idx].qf_index = 0;
+ qi->qf_lists[idx].qf_start = NULL;
qi->qf_lists[idx].qf_last = NULL;
+ qi->qf_lists[idx].qf_ptr = NULL;
+ qi->qf_lists[idx].qf_nonevalid = TRUE;
qf_clean_dir_stack(&qi->qf_dir_stack);
qi->qf_directory = NULL;
qf_clean_dir_stack(&qi->qf_file_stack);
qi->qf_currfile = NULL;
+ qi->qf_multiline = FALSE;
+ qi->qf_multiignore = FALSE;
+ qi->qf_multiscan = FALSE;
}
/*
@@ -4923,6 +4929,7 @@ qf_free_stack(win_T *wp, qf_info_T *qi)
/* If the location list window is open, then create a new empty
* location list */
qf_info_T *new_ll = ll_new_list();
+
orig_wp->w_llist_ref = new_ll;
if (llwin != NULL)
{