nano

nano with my custom patches
git clone git://bsandro.tech/nano
Log | Files | Refs | README | LICENSE

commit 2b1bc6866a7be5160d03201192c50accd8722f1c
parent 90b959a6777c01c52d76203fb4e95bc8c5c0af01
Author: Benno Schulenberg <bensberg@justemail.net>
Date:   Wed, 21 Dec 2016 17:07:04 +0100

input: don't crash when receiving a KEY_CANCEL

On some systems, typing ^C apparently results in a KEY_CANCEL in
the input stream, which gets hard-bound to the do_cancel function.
But in the main menu there is no Cancel function.  So... in that
case, let it fall back to the plain old Ctrl-C code: 0x03.

Reported-by: Liam Gretton <liam.gretton@leicester.ac.uk>

Diffstat:
Msrc/winio.c | 2+-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/winio.c b/src/winio.c @@ -667,7 +667,7 @@ int parse_kbinput(WINDOW *win) #endif /* Slang doesn't support KEY_CANCEL. */ case KEY_CANCEL: - return first_sc_for(currmenu, do_cancel)->keycode; + return sc_seq_or(do_cancel, 0x03); #endif #ifdef KEY_SUSPEND #ifdef KEY_SSUSPEND