mirror of
https://github.com/neovim/neovim.git
synced 2025-09-16 00:08:19 +00:00
vim-patch:8.2.1901: variable completion does not work in command line window
Problem: Variable completion does not work in command line window. Solution: Use the "prevwin". (closes vim/vim#7198)4ff2f2fb6b
N/A patches for version.c: vim-patch:8.2.1899: crash in out-of-memory situation Problem: Crash in out-of-memory situation. Solution: Bail out if shell_name is NULL. (Dominique Pellé, closes vim/vim#7196)67def64a4e
This commit is contained in:
@@ -2994,7 +2994,6 @@ char_u *get_user_var_name(expand_T *xp, int idx)
|
||||
static size_t tdone;
|
||||
static size_t vidx;
|
||||
static hashitem_T *hi;
|
||||
hashtab_T *ht;
|
||||
|
||||
if (idx == 0) {
|
||||
gdone = bdone = wdone = vidx = 0;
|
||||
@@ -3015,7 +3014,10 @@ char_u *get_user_var_name(expand_T *xp, int idx)
|
||||
}
|
||||
|
||||
// b: variables
|
||||
ht = &curbuf->b_vars->dv_hashtab;
|
||||
// In cmdwin, the alternative buffer should be used.
|
||||
hashtab_T *ht = (cmdwin_type != 0 && get_cmdline_type() == NUL)
|
||||
? &prevwin->w_buffer->b_vars->dv_hashtab
|
||||
: &curbuf->b_vars->dv_hashtab;
|
||||
if (bdone < ht->ht_used) {
|
||||
if (bdone++ == 0)
|
||||
hi = ht->ht_array;
|
||||
@@ -3027,7 +3029,10 @@ char_u *get_user_var_name(expand_T *xp, int idx)
|
||||
}
|
||||
|
||||
// w: variables
|
||||
ht = &curwin->w_vars->dv_hashtab;
|
||||
// In cmdwin, the alternative window should be used.
|
||||
ht = (cmdwin_type != 0 && get_cmdline_type() == NUL)
|
||||
? &prevwin->w_vars->dv_hashtab
|
||||
: &curwin->w_vars->dv_hashtab;
|
||||
if (wdone < ht->ht_used) {
|
||||
if (wdone++ == 0)
|
||||
hi = ht->ht_array;
|
||||
|
Reference in New Issue
Block a user