Page MenuHomeFreeBSD

D52494.id.diff
No OneTemporary

D52494.id.diff

diff --git a/stand/efi/libefi/efi_console.c b/stand/efi/libefi/efi_console.c
--- a/stand/efi/libefi/efi_console.c
+++ b/stand/efi/libefi/efi_console.c
@@ -96,7 +96,6 @@
#define KEYBUFSZ 10
static unsigned keybuf[KEYBUFSZ]; /* keybuf for extended codes */
-static int key_pending;
static const unsigned char teken_color_to_efi_color[16] = {
EFI_BLACK,
@@ -1341,8 +1340,6 @@
if (!boot_services_active)
return (-1);
- key_pending = 0;
-
if (coninex == NULL) {
if (efi_readkey())
return (keybuf_getchar());
@@ -1359,34 +1356,16 @@
{
EFI_STATUS status;
- if (keybuf_ischar() || key_pending)
+ if (keybuf_ischar())
return (1);
if (!boot_services_active)
return (0);
- /*
- * Some EFI implementation (u-boot for example) do not support
- * WaitForKey().
- * CheckEvent() can clear the signaled state.
- */
- if (coninex != NULL) {
- if (coninex->WaitForKeyEx == NULL) {
- key_pending = efi_readkey_ex();
- } else {
- status = BS->CheckEvent(coninex->WaitForKeyEx);
- key_pending = status == EFI_SUCCESS;
- }
- } else {
- if (conin->WaitForKey == NULL) {
- key_pending = efi_readkey();
- } else {
- status = BS->CheckEvent(conin->WaitForKey);
- key_pending = status == EFI_SUCCESS;
- }
- }
+ if (coninex != NULL)
+ return (efi_readkey_ex());
- return (key_pending);
+ return (efi_readkey());
}
/* Plain direct access to EFI OutputString(). */

File Metadata

Mime Type
text/plain
Expires
Sat, Oct 11, 1:31 AM (16 h, 56 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
22401172
Default Alt Text
D52494.id.diff (1 KB)

Event Timeline