From 158b558711f5fec395b88dd64fc0d134648620d6 Mon Sep 17 00:00:00 2001 From: Ruiyu Ni Date: Fri, 24 Aug 2018 11:22:05 +0800 Subject: [PATCH] EmulatorPkg/EmuGopDxe: Fix TxtInEx.SetState SCT conformance failure REF: https://bugzilla.tianocore.org/show_bug.cgi?id=1118 Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ruiyu Ni Reviewed-by: Hao Wu Cc: Andrew Fish --- EmulatorPkg/EmuGopDxe/GopInput.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/EmulatorPkg/EmuGopDxe/GopInput.c b/EmulatorPkg/EmuGopDxe/GopInput.c index 1d40b1d7d6..97a5fbc1ad 100644 --- a/EmulatorPkg/EmuGopDxe/GopInput.c +++ b/EmulatorPkg/EmuGopDxe/GopInput.c @@ -1,6 +1,6 @@ /*++ @file -Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.
+Copyright (c) 2006 - 2018, Intel Corporation. All rights reserved.
Portions copyright (c) 2010 0 2011,Apple Inc. All rights reserved.
This program and the accompanying materials are licensed and made available under the terms and conditions of the BSD License @@ -442,11 +442,20 @@ EmuGopSimpleTextInExSetState ( EFI_STATUS Status; EFI_TPL OldTpl; + if (KeyToggleState == NULL) { + return EFI_INVALID_PARAMETER; + } + Private = GOP_PRIVATE_DATA_FROM_TEXT_IN_EX_THIS (This); if (Private->EmuGraphicsWindow == NULL) { return EFI_NOT_READY; } + if (((Private->KeyState.KeyToggleState & EFI_TOGGLE_STATE_VALID) != EFI_TOGGLE_STATE_VALID) || + ((*KeyToggleState & EFI_TOGGLE_STATE_VALID) != EFI_TOGGLE_STATE_VALID)) { + return EFI_UNSUPPORTED; + } + // // Enter critical section // -- 2.39.2