Browse Source

* handle nil key events properly in ConvertToLegacyKeyEvent

git-svn-id: branches/unicodekvm@40295 -
nickysn 6 years ago
parent
commit
7d638a1e39
1 changed files with 6 additions and 3 deletions
  1. 6 3
      packages/rtl-console/src/inc/keyboard.inc

+ 6 - 3
packages/rtl-console/src/inc/keyboard.inc

@@ -110,9 +110,12 @@ end;
 
 
 function ConvertToLegacyKeyEvent(const KeyEvent: TEnhancedKeyEvent): TKeyEvent;
 function ConvertToLegacyKeyEvent(const KeyEvent: TEnhancedKeyEvent): TKeyEvent;
 begin
 begin
-  ConvertToLegacyKeyEvent:=(kbPhys shl 24) or
-    ConvertExtendedToStandardScanCode(KeyEvent.VirtualScanCode) or
-    (KeyEvent.ShiftState shl 16);
+  if KeyEvent=NilEnhancedKeyEvent then
+    ConvertToLegacyKeyEvent:=0
+  else
+    ConvertToLegacyKeyEvent:=(kbPhys shl 24) or
+      ConvertExtendedToStandardScanCode(KeyEvent.VirtualScanCode) or
+      (KeyEvent.ShiftState shl 16);
 end;
 end;