vim-patch:9.0.0015: with EXITFREE defined terminal menus are not cleared (#19187)

Problem:    With EXITFREE defined terminal menus are not cleared.
Solution:   Also clear terminal menus. Remove condition that is always true.
            (closes vim/vim#10641)
79ae152697
This commit is contained in:
zeertzjq 2022-07-01 21:02:59 +08:00 committed by GitHub
parent 6486b0345a
commit 2b1abe3c9d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 2 additions and 2 deletions

View File

@ -687,6 +687,7 @@ void free_all_mem(void)
// Clear menus.
do_cmdline_cmd("aunmenu *");
do_cmdline_cmd("tlunmenu *");
do_cmdline_cmd("menutranslate clear");
// Clear mappings, abbreviations, breakpoints.

View File

@ -1496,11 +1496,10 @@ void execute_menu(const exarg_T *eap, vimmenu_T *menu, int mode_idx)
}
}
if (idx == -1 || eap == NULL) {
if (idx == MENU_INDEX_INVALID || eap == NULL) {
idx = MENU_INDEX_NORMAL;
}
assert(idx != MENU_INDEX_INVALID);
if (menu->strings[idx] != NULL && (menu->modes & (1 << idx))) {
// When executing a script or function execute the commands right now.
// Also for the window toolbar