mirror of
https://github.com/vim/vim.git
synced 2025-09-29 04:34:16 -04:00
patch 8.2.4723: the ModeChanged autocmd event is inefficient
Problem: The ModeChanged autocmd event is inefficient. Solution: Avoid allocating memory. (closes #10134) Rename trigger_modechanged() to may_trigger_modechanged().
This commit is contained in:
@@ -1240,17 +1240,7 @@ do_autocmd_event(
|
||||
// need to initialize last_mode for the first ModeChanged
|
||||
// autocmd
|
||||
if (event == EVENT_MODECHANGED && !has_modechanged())
|
||||
{
|
||||
typval_T rettv;
|
||||
typval_T tv[2];
|
||||
|
||||
tv[0].v_type = VAR_NUMBER;
|
||||
tv[0].vval.v_number = 1;
|
||||
tv[1].v_type = VAR_UNKNOWN;
|
||||
f_mode(tv, &rettv);
|
||||
STRCPY(last_mode, rettv.vval.v_string);
|
||||
vim_free(rettv.vval.v_string);
|
||||
}
|
||||
get_mode(last_mode);
|
||||
#endif
|
||||
// Initialize the fields checked by the WinScrolled trigger to
|
||||
// stop it from firing right after the first autocmd is defined.
|
||||
|
Reference in New Issue
Block a user