<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Tianocore/edk2.git/ShellPkg/Library/UefiShellLevel2CommandsLib, branch master</title>
<subtitle>EDK II (mirror)</subtitle>
<id>https://git.radix-linux.su/Tianocore/edk2.git/atom?h=master</id>
<link rel='self' href='https://git.radix-linux.su/Tianocore/edk2.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/'/>
<updated>2026-08-27T07:58:44+00:00</updated>
<entry>
<title>ShellPkg/Ls: Initialize list pointer variable</title>
<updated>2026-08-27T07:58:44+00:00</updated>
<author>
<name>Artem Senichev</name>
<email>artemsen@gmail.com</email>
</author>
<published>2026-08-19T11:28:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=19d74a12441794183d14f80ebc3e356de26320c4'/>
<id>urn:sha1:19d74a12441794183d14f80ebc3e356de26320c4</id>
<content type='text'>
Using an uninitialized variable resulted in a system exception when the
user typed the `ls -r` command.

ShellOpenFileMetaArg() only allocates a list head when this is NULL, and
appends to whatever it points at otherwise.

Signed-off-by: Artem Senichev &lt;artemsen@gmail.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg/Ls: Remove double-free calls</title>
<updated>2026-08-04T07:35:35+00:00</updated>
<author>
<name>Pierre Gondois</name>
<email>pierre.gondois@arm.com</email>
</author>
<published>2026-05-04T08:28:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=4e1e7393384987244fdb824e80be24db2468da29'/>
<id>urn:sha1:4e1e7393384987244fdb824e80be24db2468da29</id>
<content type='text'>
Package is always freed in ShellCommandRunLs().
Remove calls to ShellCommandLineFreeVarList() in MainCmdLs().

This double-free was introduced in:
commit 531b0aa00211 ("ShellPkg/UefiShellLevel2:
Extract MainCmdXXX() function")

Signed-off-by: Pierre Gondois &lt;pierre.gondois@arm.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg: Fix the issue that the UEFI Shell layout is messed up</title>
<updated>2026-06-21T16:49:02+00:00</updated>
<author>
<name>Qihang Gao</name>
<email>gaoqihang@loongson.cn</email>
</author>
<published>2026-06-18T03:00:24+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=70741a15d9a714323a5598eac47727e60507e22f'/>
<id>urn:sha1:70741a15d9a714323a5598eac47727e60507e22f</id>
<content type='text'>
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-&gt;ConOut-&gt;Mode-&gt;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 &lt;gaoqihang@loongson.cn&gt;
</content>
</entry>
<entry>
<title>ShellPkg/TimeDate: Extract GetTimeZoneFromString() helper</title>
<updated>2026-04-24T18:18:47+00:00</updated>
<author>
<name>Pierre Gondois</name>
<email>pierre.gondois@arm.com</email>
</author>
<published>2026-04-03T14:43:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=12e26dc213cb9d457b79327e2e38b4502765e8f9'/>
<id>urn:sha1:12e26dc213cb9d457b79327e2e38b4502765e8f9</id>
<content type='text'>
Extract a GetTimeZoneFromString() function to decrease the
size of MainCmdTime().

No functional change.

Signed-off-by: Pierre Gondois &lt;pierre.gondois@arm.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg/TimeDate: Extract PrintDaylight() helper</title>
<updated>2026-04-24T18:18:47+00:00</updated>
<author>
<name>Pierre Gondois</name>
<email>pierre.gondois@arm.com</email>
</author>
<published>2026-04-03T14:42:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=c062ff8487d2e6475d12ef25a40a56db05877d45'/>
<id>urn:sha1:c062ff8487d2e6475d12ef25a40a56db05877d45</id>
<content type='text'>
Extract a PrintDaylight() function to decrease the
size of MainCmdTime().

No functional change.

Signed-off-by: Pierre Gondois &lt;pierre.gondois@arm.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg/TimeDate: Extract PrintTime() helper</title>
<updated>2026-04-24T18:18:47+00:00</updated>
<author>
<name>Pierre Gondois</name>
<email>pierre.gondois@arm.com</email>
</author>
<published>2026-04-03T14:41:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=a366d6f8fe6c5792c875af0636910cd4f75f09a5'/>
<id>urn:sha1:a366d6f8fe6c5792c875af0636910cd4f75f09a5</id>
<content type='text'>
Extract a PrintTime() function to factorize the code.

No functional change.

Signed-off-by: Pierre Gondois &lt;pierre.gondois@arm.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg/TimeDate: Extract GetCurrentTime() helper</title>
<updated>2026-04-24T18:18:47+00:00</updated>
<author>
<name>Pierre Gondois</name>
<email>pierre.gondois@arm.com</email>
</author>
<published>2026-04-03T14:40:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=0f69afa29536ae0b8ffd5b8c0db81575a930cbf1'/>
<id>urn:sha1:0f69afa29536ae0b8ffd5b8c0db81575a930cbf1</id>
<content type='text'>
Extract a GetCurrentTime() function to factorize error
messages.

No functional change.

Signed-off-by: Pierre Gondois &lt;pierre.gondois@arm.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg/Ls: Extract PrintLsOutputCurr() function</title>
<updated>2026-04-24T18:18:47+00:00</updated>
<author>
<name>Pierre Gondois</name>
<email>pierre.gondois@arm.com</email>
</author>
<published>2026-04-03T09:47:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=be6ce32cd0118806de1a5575a535a76644076ef7'/>
<id>urn:sha1:be6ce32cd0118806de1a5575a535a76644076ef7</id>
<content type='text'>
Extract a PrintLsOutputCurr() function to decrease
the size of PrintLsOutput().

The patch also rationalize the usage of the Found
parameter:
- Found is updated only when a valid MetaFile is found
- a IsRecursive variable is created to distinguish
  the first PrintLsOutput() call from the other
  recursive ones.

No functional change.

Signed-off-by: Pierre Gondois &lt;pierre.gondois@arm.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg/Ls: Lower PrintLsOutputRec() indentation level</title>
<updated>2026-04-24T18:18:47+00:00</updated>
<author>
<name>Pierre Gondois</name>
<email>pierre.gondois@arm.com</email>
</author>
<published>2026-04-03T09:29:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=636761d3cab451445b6c2b76b0821d2adf0181a5'/>
<id>urn:sha1:636761d3cab451445b6c2b76b0821d2adf0181a5</id>
<content type='text'>
Invert some conditions in PrintLsOutputRec() to lower
the indentation level.

No functional change.

Signed-off-by: Pierre Gondois &lt;pierre.gondois@arm.com&gt;
</content>
</entry>
<entry>
<title>ShellPkg/Ls: Extract PrintLsOutputRec() function</title>
<updated>2026-04-24T18:18:47+00:00</updated>
<author>
<name>Pierre Gondois</name>
<email>pierre.gondois@arm.com</email>
</author>
<published>2026-04-03T09:25:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=da54ab306a6291492cccedc28555b38a6112ab0d'/>
<id>urn:sha1:da54ab306a6291492cccedc28555b38a6112ab0d</id>
<content type='text'>
Extract a PrintLsOutputRec() function to decrease
the size of PrintLsOutput().

No functional change.

Signed-off-by: Pierre Gondois &lt;pierre.gondois@arm.com&gt;
</content>
</entry>
</feed>
