From 624dbfdd44ee012b6f621529bb9ab56cd749ddc6 Mon Sep 17 00:00:00 2001 From: Marco Hinz Date: Fri, 3 May 2019 11:40:09 +0200 Subject: vim-patch:8.0.1500: possible NULL pointer dereference Problem: Possible NULL pointer dereference. (Coverity) Solution: Check for the pointer not being NULL. https://github.com/vim/vim/commit/0549a1e184d33674f4c2b8fb44ccdf6b9b9808a3 --- src/nvim/quickfix.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'src') diff --git a/src/nvim/quickfix.c b/src/nvim/quickfix.c index f9882e9561..d8156c22cb 100644 --- a/src/nvim/quickfix.c +++ b/src/nvim/quickfix.c @@ -3296,7 +3296,7 @@ void ex_make(exarg_T *eap) if (au_name != NULL) { apply_autocmds(EVENT_QUICKFIXCMDPOST, au_name, curbuf->b_fname, TRUE, curbuf); - if (qi->qf_curlist < qi->qf_listcount) + if (qi != NULL && qi->qf_curlist < qi->qf_listcount) res = qi->qf_lists[qi->qf_curlist].qf_count; else res = 0; @@ -3652,13 +3652,15 @@ void ex_cfile(exarg_T *eap) if (res >= 0 && qi != NULL) { qf_list_changed(qi, qi->qf_curlist); } - unsigned save_qfid = qi->qf_lists[qi->qf_curlist].qf_id; + unsigned save_qfid; + if (qi != NULL) + save_qfid = qi->qf_lists[qi->qf_curlist].qf_id; if (au_name != NULL) { apply_autocmds(EVENT_QUICKFIXCMDPOST, au_name, NULL, false, curbuf); } // Autocmd might have freed the quickfix/location list. Check whether it is // still valid - if (!qflist_valid(wp, save_qfid)) { + if (qi != NULL && !qflist_valid(wp, save_qfid)) { return; } if (res > 0 && (eap->cmdidx == CMD_cfile || eap->cmdidx == CMD_lfile)) { -- cgit