patch 8.2.0421: interrupting with CTRL-C does not always work
Problem: Interrupting with CTRL-C does not always work.
Solution: Recognize CTRL-C while modifyOtherKeys is set.
diff --git a/src/evalfunc.c b/src/evalfunc.c
index 9a6187b..0f99c6d 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -2472,7 +2472,17 @@
if (lowlevel)
{
#ifdef USE_INPUT_BUF
- add_to_input_buf(keys, (int)STRLEN(keys));
+ int idx;
+ int len = (int)STRLEN(keys);
+
+ for (idx = 0; idx < len; ++idx)
+ {
+ // if a CTRL-C was typed, set got_int, similar to what
+ // happens in fill_input_buf()
+ if (keys[idx] == 3 && ctrl_c_interrupts && typed)
+ got_int = TRUE;
+ add_to_input_buf(keys + idx, 1);
+ }
#else
emsg(_("E980: lowlevel input not supported"));
#endif