edk2/ShellPkg
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
..
Application ShellPkg/Shell: Remove duplicate Guid in INF file 2026-04-29 11:18:10 +02:00
DynamicCommand ShellPkg: Remove improper Depex section in UEFI_APPLICATION 2026-06-09 05:51:07 +00:00
Include ShellPkg/UefiShellLib: Add IsDotOrDotDot() function 2026-04-24 18:18:47 +00:00
Library ShellPkg: Fix the issue that the UEFI Shell layout is messed up 2026-06-21 16:49:02 +00:00
Test ShellPkg: Replace include guards with #pragma once 2026-02-23 21:01:28 +00:00
ShellPkg.ci.yaml ShellPkg: Remove EmbeddedPkg dependency 2025-08-12 17:42:44 +00:00
ShellPkg.dec ShellPkg: Remove PcdShellSupportOldProtocols 2025-06-13 21:11:49 +00:00
ShellPkg.dsc ShellPkg: Remove ARM32 Support 2025-09-25 22:04:10 +00:00