[syslinux:firmware] efi_getchar() should wait for the event before reading keystroke. On an efi64 platform, it didn't work without wait. It needs further debugging to ascertain the fix.

syslinux-bot for chandramouli narayanan mouli at linux.intel.com
Fri Nov 9 09:06:23 PST 2012


Commit-ID:  16aba524b339a2b0c5f0514827a8329fd120be03
Gitweb:     http://www.syslinux.org/commit/16aba524b339a2b0c5f0514827a8329fd120be03
Author:     chandramouli narayanan <mouli at linux.intel.com>
AuthorDate: Fri, 13 Jul 2012 10:34:42 -0700
Committer:  chandramouli narayanan <mouli at linux.intel.com>
CommitDate: Fri, 13 Jul 2012 10:34:42 -0700

efi_getchar() should wait for the event before reading keystroke. On an efi64 platform, it didn't work without wait. It needs further debugging to ascertain the fix.


---
 efi/main.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/efi/main.c b/efi/main.c
index 07177e0..251f5aa 100644
--- a/efi/main.c
+++ b/efi/main.c
@@ -243,6 +243,7 @@ char efi_getchar(void)
 	EFI_STATUS status;
 	char c;
 
+	WaitForSingleEvent(in->WaitForKey, 0);
 	do {
 		status = uefi_call_wrapper(in->ReadKeyStroke, 2, in, &key);
 	} while (status == EFI_NOT_READY);


More information about the Syslinux-commits mailing list