Fix a bug which cause a CRTL, ALT, or SHIFT is pressed on the GOP console for NT32, it inserts a ' 'character character.

Root cause is that the parameter of UnicodeStr doesn’t initialize.

Signed-off-by: qianouyang
Reviewed-by: niruiyu

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12575 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
qianouyang 2011-10-26 09:36:55 +00:00
parent 501793fad4
commit af1600fd9a
1 changed files with 3 additions and 5 deletions

View File

@ -781,7 +781,7 @@ WinNtGopThreadWindowProc (
// The ESC key also generate WM_CHAR.
//
if (wParam == 0x1B) {
return 0;
return 0;
}
if (AltIsPress == TRUE) {
@ -815,15 +815,13 @@ WinNtGopThreadWindowProc (
return 0;
case WM_KEYDOWN:
Key.ScanCode = SCAN_NULL;
Key.ScanCode = SCAN_NULL;
Key.UnicodeChar = CHAR_NULL;
//
// A value key press will cause a WM_KEYDOWN first, then cause a WM_CHAR
// So if there is no modifier key updated, skip the WM_KEYDOWN even.
//
if (WinNtGopConvertParamToEfiKey (Private, &wParam, &lParam, &Key)) {
if (Key.ScanCode != SCAN_NULL) {
Key.UnicodeChar = CHAR_NULL;
}
//
// Support the partial keystroke, add all keydown event into the queue.
//