aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/quickfix.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/nvim/quickfix.c')
-rw-r--r--src/nvim/quickfix.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/nvim/quickfix.c b/src/nvim/quickfix.c
index 194cc5781b..5d30ca624f 100644
--- a/src/nvim/quickfix.c
+++ b/src/nvim/quickfix.c
@@ -2595,8 +2595,11 @@ static void 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;