edk2/ShellPkg/Library/UefiShellLevel2CommandsLib
Qihang Gao 70741a15d9 ShellPkg: Fix the issue that the UEFI Shell layout is messed up
Fixes https://github.com/tianocore/edk2/issues/12689

When the UEFI Shell mapping table is empty (NULL), the console layout
becomes corrupted in DEBUG builds. This occurs because the cursor position
for the message map: No mapping found. is computed incorrectly under DEBUG
mode. The presence of DEBUG output from the Shell driver causes
gST->ConOut->Mode->CursorRow to no longer reflect the actual cursor position
on the serial port, leading to misplacement of subsequent output.

This patch replaces the existing print routine with ShellPrintHiiDefaultEx().
The new function automatically calculates the correct cursor position for the
"No mapping found" line, eliminating the dependency on the stale CursorRow
value. As a result, the layout remains consistent regardless of DEBUG message
activity.

Signed-off-by: Qihang Gao <gaoqihang@loongson.cn>
2026-06-21 16:49:02 +00:00
..
Attrib.c ShellPkg/UefiShellLib: Add IsDotOrDotDot() function 2026-04-24 18:18:47 +00:00
Cd.c ShellPkg/UefiShellLevel2: Lower indentation level in MainCmdXXX() 2025-12-02 09:00:53 +01:00
Cp.c ShellPkg/UefiShellLib: Add IsDotOrDotDot() function 2026-04-24 18:18:47 +00:00
Load.c ShellPkg/UefiShellLevel2: Lower indentation level in MainCmdXXX() 2025-12-02 09:00:53 +01:00
Ls.c ShellPkg/Ls: Extract PrintLsOutputCurr() function 2026-04-24 18:18:47 +00:00
Map.c ShellPkg: Fix the issue that the UEFI Shell layout is messed up 2026-06-21 16:49:02 +00:00
MkDir.c ShellPkg/UefiShellLevel2: Lower indentation level in MainCmdXXX() 2025-12-02 09:00:53 +01:00
Mv.c ShellPkg/UefiShellLib: Add IsDotOrDotDot() function 2026-04-24 18:18:47 +00:00
Parse.c ShellPkg/UefiShellLevel2: Lower indentation level in MainCmdXXX() 2025-12-02 09:00:53 +01:00
Reset.c ShellPkg/UefiShellLevel2: Lower indentation level in MainCmdXXX() 2025-12-02 09:00:53 +01:00
Rm.c ShellPkg/Rm: Extract DeleteDirectory() function 2026-04-24 18:18:47 +00:00
Set.c ShellPkg/UefiShellLevel2: Lower indentation level in MainCmdXXX() 2025-12-02 09:00:53 +01:00
TimeDate.c ShellPkg/TimeDate: Extract GetTimeZoneFromString() helper 2026-04-24 18:18:47 +00:00
UefiShellLevel2CommandsLib.c ShellPkg: ShellLevel2StripQuotes: Strip consecutive quotes 2024-10-04 19:34:05 +00:00
UefiShellLevel2CommandsLib.h ShellPkg: Replace include guards with #pragma once 2026-02-23 21:01:28 +00:00
UefiShellLevel2CommandsLib.inf ShellPkg: Replace BSD License with BSD+Patent License 2019-04-09 10:58:25 -07:00
UefiShellLevel2CommandsLib.uni ShellPkg/UefiShellLevel2CommandsLib: Add helper for reset -fwui option 2024-12-09 17:16:58 +00:00
Vol.c ShellPkg/UefiShellLevel2: Extract MainCmdXXX() function 2025-12-02 09:00:53 +01:00