fix(lsp): call on_list before reading loclist #37645

Problem:
`on_list` is supposed to replace the default list-handler. With the current order of these `if` statements `on_list` won't be called if `loclist` is true.

Solution:
Change the order of the relevant blocks.

(cherry picked from commit 0501c5fd09)
This commit is contained in:
Maria Solano
2026-02-01 04:18:16 -08:00
committed by github-actions[bot]
parent 768b624c40
commit f9c67c40bc

View File

@@ -789,12 +789,12 @@ function M.references(context, opts)
bufnr = bufnr,
},
}
if opts.loclist then
vim.fn.setloclist(0, {}, ' ', list)
vim.cmd.lopen()
elseif opts.on_list then
if opts.on_list then
assert(vim.is_callable(opts.on_list), 'on_list is not a function')
opts.on_list(list)
elseif opts.loclist then
vim.fn.setloclist(0, {}, ' ', list)
vim.cmd.lopen()
else
vim.fn.setqflist({}, ' ', list)
vim.cmd('botright copen')