From ed2a3a0cfe5e765c9bc54989fd9ed9eeeced3f0f Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Fri, 21 Aug 2009 18:08:50 +0200 Subject: ^H (ASCII BS) == ^? (ASCII DEL) --- src/ui_readline.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'src/ui_readline.c') diff --git a/src/ui_readline.c b/src/ui_readline.c index f804eab..6b92ca6 100644 --- a/src/ui_readline.c +++ b/src/ui_readline.c @@ -92,7 +92,8 @@ size_t BarReadline (char *buf, size_t bufSize, const char *mask, break; /* backspace */ - case 127: + case 8: /* ASCII BS */ + case 127: /* ASCII DEL */ if (bufPos > 0) { if (BarReadlineIsAscii (buf[bufPos-1])) { BarReadlineMoveLeft (buf, &bufPos, &bufLen); @@ -115,6 +116,7 @@ size_t BarReadline (char *buf, size_t bufSize, const char *mask, fflush (stdout); } } else if (bufPos == 0 && buf[bufPos] != '\0') { + /* delete char at position 0 but don't move cursor any further */ buf[bufPos] = '\0'; if (!noEcho) { printf ("\033[K"); -- cgit v1.2.3