From 539aa6b25eaea91dfd1a175cd053c0f259fa2e58 Mon Sep 17 00:00:00 2001 From: Bram Moolenaar Date: Sun, 17 Nov 2019 18:09:38 +0100 Subject: patch 8.1.2315: not always using the right window when jumping to an error Problem: Not always using the right window when jumping to an error. Solution: Add the "uselast" flag in 'switchbuf'. (closes #1652) --- src/quickfix.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'src/quickfix.c') diff --git a/src/quickfix.c b/src/quickfix.c index a5d307ea79..aa4e765908 100644 --- a/src/quickfix.c +++ b/src/quickfix.c @@ -3013,8 +3013,11 @@ qf_goto_win_with_qfl_file(int qf_fnum) if (IS_QF_WINDOW(win)) { // Didn't find it, go to the window before the quickfix - // window. - if (altwin != NULL) + // window, unless 'switchbuf' contains 'uselast': in this case we + // try to jump to the previously used window first. + if ((swb_flags & SWB_USELAST) && win_valid(prevwin)) + win = prevwin; + else if (altwin != NULL) win = altwin; else if (curwin->w_prev != NULL) win = curwin->w_prev; -- cgit v1.2.3