comparison src/ex_getln.c @ 29481:34bb46847ba0 v9.0.0082

patch 9.0.0082: cannot interrupt global command from command line Commit: https://github.com/vim/vim/commit/3cfae39b087c2724991d385e5e8ee7d011aa8e99 Author: zeertzjq <zeertzjq@outlook.com> Date: Tue Jul 26 17:48:13 2022 +0100 patch 9.0.0082: cannot interrupt global command from command line Problem: Cannot interrupt global command from command line. Solution: Reset got_int in another place. (closes https://github.com/vim/vim/issues/10739)
author Bram Moolenaar <Bram@vim.org>
date Tue, 26 Jul 2022 19:00:03 +0200
parents b43cb3fd0c7b
children 2a327999c05c
comparison
equal deleted inserted replaced
29480:44fddf8c1ea4 29481:34bb46847ba0
1784 1784
1785 did_emsg = FALSE; // There can't really be a reason why an error 1785 did_emsg = FALSE; // There can't really be a reason why an error
1786 // that occurs while typing a command should 1786 // that occurs while typing a command should
1787 // cause the command not to be executed. 1787 // cause the command not to be executed.
1788 1788
1789 got_int = FALSE; // avoid infinite Ctrl-C loop in Ex mode
1790
1791 // Trigger SafeState if nothing is pending. 1789 // Trigger SafeState if nothing is pending.
1792 may_trigger_safestate(xpc.xp_numfiles <= 0); 1790 may_trigger_safestate(xpc.xp_numfiles <= 0);
1793 1791
1794 // Get a character. Ignore K_IGNORE and K_NOP, they should not do 1792 // Get a character. Ignore K_IGNORE and K_NOP, they should not do
1795 // anything, such as stop completion. 1793 // anything, such as stop completion.
1848 ) 1846 )
1849 #if defined(FEAT_EVAL) || defined(FEAT_CRYPT) 1847 #if defined(FEAT_EVAL) || defined(FEAT_CRYPT)
1850 && firstc != '@' 1848 && firstc != '@'
1851 #endif 1849 #endif
1852 #ifdef FEAT_EVAL 1850 #ifdef FEAT_EVAL
1853 && !break_ctrl_c 1851 // do clear got_int in Ex mode to avoid infinite Ctrl-C loop
1852 && (!break_ctrl_c || exmode_active)
1854 #endif 1853 #endif
1855 && !global_busy) 1854 && !global_busy)
1856 got_int = FALSE; 1855 got_int = FALSE;
1857 1856
1858 // free old command line when finished moving around in the history 1857 // free old command line when finished moving around in the history