diff options
author | qianouyang <qianouyang@6f19259b-4bc3-4df7-8a09-765794883524> | 2011-10-26 09:36:55 +0000 |
---|---|---|
committer | qianouyang <qianouyang@6f19259b-4bc3-4df7-8a09-765794883524> | 2011-10-26 09:36:55 +0000 |
commit | af1600fd9a0b9a413cfc2b031c641002beafd48f (patch) | |
tree | ca7292317f545b5ead8d0b82e6ea5b015b9d473a | |
parent | 501793fad4084c43828ba2f4e2d9355d29abe9f7 (diff) | |
download | edk2-af1600fd9a0b9a413cfc2b031c641002beafd48f.tar.gz edk2-af1600fd9a0b9a413cfc2b031c641002beafd48f.tar.bz2 edk2-af1600fd9a0b9a413cfc2b031c641002beafd48f.zip |
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
-rw-r--r-- | Nt32Pkg/WinNtGopDxe/WinNtGopScreen.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/Nt32Pkg/WinNtGopDxe/WinNtGopScreen.c b/Nt32Pkg/WinNtGopDxe/WinNtGopScreen.c index 85848aa6ce..607caad2e9 100644 --- a/Nt32Pkg/WinNtGopDxe/WinNtGopScreen.c +++ b/Nt32Pkg/WinNtGopDxe/WinNtGopScreen.c @@ -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.
//
|