Mercurial > vim
comparison src/menu.c @ 22361:00f2eebe74d9 v8.2.1729
patch 8.2.1729: endless loop when ":normal" feeds popup window filter
Commit: https://github.com/vim/vim/commit/189832bf661168df7ebd428e4088737718775fbd
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Sep 23 12:29:11 2020 +0200
patch 8.2.1729: endless loop when ":normal" feeds popup window filter
Problem: Endless loop when ":normal" feeds popup window filter.
Solution: Add the ex_normal_busy_done flag.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 23 Sep 2020 12:30:04 +0200 |
parents | 4dfd00f481fb |
children | 73be82f278c0 |
comparison
equal
deleted
inserted
replaced
22360:d55224e63208 | 22361:00f2eebe74d9 |
---|---|
2396 if (save_current_state(&save_state)) | 2396 if (save_current_state(&save_state)) |
2397 exec_normal_cmd(menu->strings[idx], menu->noremap[idx], | 2397 exec_normal_cmd(menu->strings[idx], menu->noremap[idx], |
2398 menu->silent[idx]); | 2398 menu->silent[idx]); |
2399 restore_current_state(&save_state); | 2399 restore_current_state(&save_state); |
2400 --ex_normal_busy; | 2400 --ex_normal_busy; |
2401 #ifdef FEAT_PROP_POPUP | |
2402 if (ex_normal_busy == 0) | |
2403 ex_normal_busy_done = FALSE; | |
2404 #endif | |
2401 } | 2405 } |
2402 else | 2406 else |
2403 ins_typebuf(menu->strings[idx], menu->noremap[idx], 0, | 2407 ins_typebuf(menu->strings[idx], menu->noremap[idx], 0, |
2404 TRUE, menu->silent[idx]); | 2408 TRUE, menu->silent[idx]); |
2405 } | 2409 } |