gnu-efi/lib/pause.c
Kagurazaka Kotori 7cc4f3a20c
Replace Pause() macro with new library function
Key input should be consumed to prevent WaitForKey event from being
always triggered and potential buffer overflow.
This fixes issue #26.

Signed-off-by: Kagurazaka Kotori <kagurazakakotori@gmail.com>
2020-07-22 17:49:07 +08:00

16 lines
300 B
C

#include "lib.h"
VOID
Pause(
VOID
)
// Pause until any key is pressed
{
EFI_INPUT_KEY Key;
EFI_STATUS Status EFI_UNUSED;
WaitForSingleEvent(ST->ConIn->WaitForKey, 0);
Status = uefi_call_wrapper(ST->ConIn->ReadKeyStroke, 2, ST->ConIn, &Key);
ASSERT(!EFI_ERROR(Status));
}