ShellPkg/[hex]edit: use SimpleTextInEx to read console
authorRuiyu Ni <ruiyu.ni@intel.com>
Mon, 12 Feb 2018 13:42:55 +0000 (21:42 +0800)
committerRuiyu Ni <ruiyu.ni@intel.com>
Tue, 13 Feb 2018 02:54:45 +0000 (10:54 +0800)
commit5563281fa2b31093a1cbd415553b9264c5136e89
treea883c85ae8431e7f889717beb34459223ad30292
parent0a54cd4431c31ab2e72d880a55c31dd08f971cc4
ShellPkg/[hex]edit: use SimpleTextInEx to read console

REF: https://bugzilla.tianocore.org/show_bug.cgi?id=682

Edit and HexEdit commands assume that SimpleTxtIn translates
Ctrl+<Alpha-Key> key combinations into Unicode control characters
(0x1-0x1A).

Such translation does not seem to be required by the UEFI spec.
Shell should not rely on implementation specific behavior.
It should instead use SimpleTextInEx to read Ctrl+<Alpha-Key> key
combinations.

The patch changes edit and hexedit to only consumes SimpleTextInEx
so that the implementation specific behavior dependency is removed.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ruiyu Ni <ruiyu.ni@intel.com>
Reported-by: Felix <felixp@mail.ru>
Cc: Felix <felixp@mail.ru>
Reviewed-by: Jaben Carsey <jaben.carsey@intel.com>
ShellPkg/Library/UefiShellDebug1CommandsLib/Edit/MainTextEditor.c
ShellPkg/Library/UefiShellDebug1CommandsLib/Edit/TextEditorTypes.h
ShellPkg/Library/UefiShellDebug1CommandsLib/EditInputBar.c
ShellPkg/Library/UefiShellDebug1CommandsLib/EditInputBar.h
ShellPkg/Library/UefiShellDebug1CommandsLib/EditMenuBar.c
ShellPkg/Library/UefiShellDebug1CommandsLib/EditMenuBar.h
ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/HexEditorTypes.h
ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/MainHexEditor.c