diff options
author | YASUOKA Masahiko <yasuoka@cvs.openbsd.org> | 2018-08-24 01:42:42 +0000 |
---|---|---|
committer | YASUOKA Masahiko <yasuoka@cvs.openbsd.org> | 2018-08-24 01:42:42 +0000 |
commit | 3b52f5b9515ed7276e3aadc73bb509a38575a67c (patch) | |
tree | 042244a6ae3ed5afcbd69d554c3f37a14106cf52 /sys/arch/amd64 | |
parent | 38177c9d3267c83dc0c5551de52769ef9143e57e (diff) |
Don't treat UnicodeChar == 0 as a keyboard input.
This fixes the problem that which prevents typing the passpharase for
softraid on boot. It happened at least with some external keyboards
on ThinkPad X2{6,8}0. diff from Frank Groeneveld
ok tb
Diffstat (limited to 'sys/arch/amd64')
-rw-r--r-- | sys/arch/amd64/stand/efiboot/efiboot.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/arch/amd64/stand/efiboot/efiboot.c b/sys/arch/amd64/stand/efiboot/efiboot.c index 2f4a01ec7b0..6f8212c76a4 100644 --- a/sys/arch/amd64/stand/efiboot/efiboot.c +++ b/sys/arch/amd64/stand/efiboot/efiboot.c @@ -1,4 +1,4 @@ -/* $OpenBSD: efiboot.c,v 1.30 2018/07/06 07:55:50 yasuoka Exp $ */ +/* $OpenBSD: efiboot.c,v 1.31 2018/08/24 01:42:41 yasuoka Exp $ */ /* * Copyright (c) 2015 YASUOKA Masahiko <yasuoka@yasuoka.net> @@ -494,7 +494,7 @@ efi_cons_getc(dev_t dev) } status = EFI_CALL(conin->ReadKeyStroke, conin, &key); - while (status == EFI_NOT_READY) { + while (status == EFI_NOT_READY || key.UnicodeChar == 0) { if (dev & 0x80) return (0); EFI_CALL(BS->WaitForEvent, 1, &conin->WaitForKey, &dummy); |