summaryrefslogtreecommitdiffstats
path: root/sys/boot/i386/gptboot
diff options
context:
space:
mode:
authorrnordier <rnordier@FreeBSD.org>1998-10-17 11:25:05 +0000
committerrnordier <rnordier@FreeBSD.org>1998-10-17 11:25:05 +0000
commit8671c8b39b692862c6abd1f6a1221241ae58970b (patch)
tree7dd3971b0214659efebfcc357026fb9157180f4b /sys/boot/i386/gptboot
parentce63af0fefca524519c319edbedec4fe39998346 (diff)
downloadFreeBSD-src-8671c8b39b692862c6abd1f6a1221241ae58970b.zip
FreeBSD-src-8671c8b39b692862c6abd1f6a1221241ae58970b.tar.gz
Fix some glitches in the input routine:
Don't display a \b if not acting on it. Don't process binary zero chars (which result from pressing function keys, etc. on the PC).
Diffstat (limited to 'sys/boot/i386/gptboot')
-rw-r--r--sys/boot/i386/gptboot/gptboot.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/sys/boot/i386/gptboot/gptboot.c b/sys/boot/i386/gptboot/gptboot.c
index d4ecbbe..6bc0437 100644
--- a/sys/boot/i386/gptboot/gptboot.c
+++ b/sys/boot/i386/gptboot/gptboot.c
@@ -14,7 +14,7 @@
*/
/*
- * $Id: boot2.c,v 1.10 1998/10/17 09:50:09 rnordier Exp $
+ * $Id: boot2.c,v 1.11 1998/10/17 10:35:15 rnordier Exp $
*/
#include <sys/param.h>
@@ -646,9 +646,13 @@ getstr(char *str, int size)
s = str;
do {
switch (c = getchar()) {
+ case 0:
+ break;
case '\b':
if (s > str)
s--;
+ else
+ c = 0;
break;
case '\n':
*s = 0;
@@ -657,7 +661,8 @@ getstr(char *str, int size)
if (s - str < size - 1)
*s++ = c;
}
- putchar(c);
+ if (c)
+ putchar(c);
} while (c != '\n');
}
OpenPOWER on IntegriCloud