Enhance Shell 2.0 to not depend on keyboard driver implementation to fix the "CTRL+s" pause malfunction issue.
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com> Reviewed-by: Carsey Jaben <jaben.carsey@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@15052 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@ -3297,7 +3297,6 @@ NotificationFunction(
|
||||
IN EFI_KEY_DATA *KeyData
|
||||
)
|
||||
{
|
||||
EFI_INPUT_KEY Key;
|
||||
if ( ((KeyData->Key.UnicodeChar == L'c') &&
|
||||
(KeyData->KeyState.KeyShiftState == (EFI_SHIFT_STATE_VALID|EFI_LEFT_CONTROL_PRESSED) || KeyData->KeyState.KeyShiftState == (EFI_SHIFT_STATE_VALID|EFI_RIGHT_CONTROL_PRESSED))) ||
|
||||
(KeyData->Key.UnicodeChar == 3)
|
||||
@ -3310,12 +3309,6 @@ NotificationFunction(
|
||||
(KeyData->KeyState.KeyShiftState == (EFI_SHIFT_STATE_VALID|EFI_LEFT_CONTROL_PRESSED) || KeyData->KeyState.KeyShiftState == (EFI_SHIFT_STATE_VALID|EFI_RIGHT_CONTROL_PRESSED))
|
||||
){
|
||||
ShellInfoObject.HaltOutput = TRUE;
|
||||
|
||||
//
|
||||
// Make sure that there are no pending keystrokes to pervent the pause.
|
||||
//
|
||||
gST->ConIn->Reset(gST->ConIn, FALSE);
|
||||
while (gST->ConIn->ReadKeyStroke (gST->ConIn, &Key)==EFI_SUCCESS);
|
||||
}
|
||||
return (EFI_SUCCESS);
|
||||
}
|
||||
|
Reference in New Issue
Block a user