From: Eric Andersen Date: Thu, 6 Jul 2000 21:29:32 +0000 (-0000) Subject: Fixed backspace and delete so they work properly again -- broken X-Git-Tag: 0_46~50 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=02bc25be56606b3a6c66225687f848f8968a5dff;p=oweals%2Fbusybox.git Fixed backspace and delete so they work properly again -- broken since 0.44. -Erik --- diff --git a/Changelog b/Changelog index 981324308..f9d385622 100644 --- a/Changelog +++ b/Changelog @@ -29,6 +29,9 @@ Matt Kraai . * Reorganized signal names in kill.c for better architecture support -- patch thanks to simon wood + * In 0.43, backspace and delete worked properly, but with 0.45, + it just echoed a ^? for backspace, and ^H for control-h. This + was due to a broken macro in init.c, that is now fixed. -Erik Andersen diff --git a/init.c b/init.c index c960fe333..0f6a9bc9b 100644 --- a/init.c +++ b/init.c @@ -224,7 +224,7 @@ static void message(int device, char *fmt, ...) } } -#define CTRLCHAR(ch) ((ch)&0x1f) +#define CTRLCHAR(ch) ((ch)-0x40) /* Set terminal settings to reasonable defaults */ void set_term(int fd) @@ -242,7 +242,7 @@ void set_term(int fd) tty.c_cc[VSTART] = CTRLCHAR('Q'); /* Ctrl-Q */ tty.c_cc[VSTOP] = CTRLCHAR('S'); /* Ctrl-S */ tty.c_cc[VSUSP] = CTRLCHAR('Z'); /* Ctrl-Z */ - + /* use line dicipline 0 */ tty.c_line = 0; diff --git a/init/init.c b/init/init.c index c960fe333..0f6a9bc9b 100644 --- a/init/init.c +++ b/init/init.c @@ -224,7 +224,7 @@ static void message(int device, char *fmt, ...) } } -#define CTRLCHAR(ch) ((ch)&0x1f) +#define CTRLCHAR(ch) ((ch)-0x40) /* Set terminal settings to reasonable defaults */ void set_term(int fd) @@ -242,7 +242,7 @@ void set_term(int fd) tty.c_cc[VSTART] = CTRLCHAR('Q'); /* Ctrl-Q */ tty.c_cc[VSTOP] = CTRLCHAR('S'); /* Ctrl-S */ tty.c_cc[VSUSP] = CTRLCHAR('Z'); /* Ctrl-Z */ - + /* use line dicipline 0 */ tty.c_line = 0;