<feed xmlns='http://www.w3.org/2005/Atom'>
<title>Tianocore/edk2.git/MdeModulePkg/Universal/SetupBrowserDxe, branch dependabot/github_actions/actions/github-script-9</title>
<subtitle>EDK II (mirror)</subtitle>
<id>https://git.radix-linux.su/Tianocore/edk2.git/atom?h=dependabot%2Fgithub_actions%2Factions%2Fgithub-script-9</id>
<link rel='self' href='https://git.radix-linux.su/Tianocore/edk2.git/atom?h=dependabot%2Fgithub_actions%2Factions%2Fgithub-script-9'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/'/>
<updated>2026-02-23T21:01:28+00:00</updated>
<entry>
<title>MdeModulePkg: Replace include guards with #pragma once</title>
<updated>2026-02-23T21:01:28+00:00</updated>
<author>
<name>Michael Kubacki</name>
<email>michael.kubacki@microsoft.com</email>
</author>
<published>2026-02-03T18:48:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=7a934d0befca7d10f361c76af6d2fcb6eb48c835'/>
<id>urn:sha1:7a934d0befca7d10f361c76af6d2fcb6eb48c835</id>
<content type='text'>
Replace traditional `#ifndef`/`#define`/`#endif` include guards with
`#pragma` once.

`#pragma once` is a widely supported preprocessor directive that
prevents header files from being included multiple times. It is
supported by all toolchains used to build edk2: GCC, Clang/LLVM, and
MSVC.

Compared to macro-based include guards, `#pragma once`:

- Eliminates the risk of macro name collisions or copy/paste errors
  where two headers inadvertently use the same guard macro.
- Eliminate inconsistency in the way include guard macros are named
  (e.g., some files use `__FILE_H__`, others use `FILE_H_`, etc.).
- Reduces boilerplate (three lines replaced by one).
- Avoids polluting the macro namespace with guard symbols.
- Can improve build times as the preprocessor can skip re-opening the
  file entirely, rather than re-reading it to find the matching
  `#endif` ("multiple-include optimization").
  - Note that some compilers may already optimize traditional include
    guards, by recognzining the idiomatic pattern.

This change is made acknowledging that overall portability of the
code will technically be reduced, as `#pragma once` is not part of the
C/C++ standards.

However, this is considered acceptable given:

1. edk2 already defines a subset of supported compilers in
   BaseTools/Conf/tools_def.template, all of which have supported
   `#pragma once` for over two decades.
2. There have been concerns raised to the project about inconsistent
   include guard naming and potential macro collisions.

Approximate compiler support dates:

- MSVC: Supported since Visual C++ 4.2 (1996)
- GCC: Supported since 3.4 (2004)
  (http://gnu.ist.utl.pt/software/gcc/gcc-3.4/changes.html)
- Clang (LLVM based): Since initial release in 2007

Signed-off-by: Michael Kubacki &lt;michael.kubacki@microsoft.com&gt;
</content>
</entry>
<entry>
<title>MdeModulePkg/SetupBrowserDxe: Check Form parameter in RuleIdToExpression()</title>
<updated>2026-02-02T04:35:29+00:00</updated>
<author>
<name>Yang Gang</name>
<email>yanggang@byosoft.com.cn</email>
</author>
<published>2026-01-27T03:27:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=f5f4e9b764628b7c85a1fb6c695cdae7238e4b72'/>
<id>urn:sha1:f5f4e9b764628b7c85a1fb6c695cdae7238e4b72</id>
<content type='text'>
Signed-off-by: Yang Gang &lt;yanggang@byosoft.com.cn&gt;
</content>
</entry>
<entry>
<title>MdeModulePkg/SetupBrowserDxe: Fix code issue in ParseOpCodes()</title>
<updated>2026-02-02T04:35:29+00:00</updated>
<author>
<name>Yang Gang</name>
<email>yanggang@byosoft.com.cn</email>
</author>
<published>2026-01-27T03:22:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=5a414b5ef7ded0f7b0fc0ff0050fcf0cd1b8f332'/>
<id>urn:sha1:5a414b5ef7ded0f7b0fc0ff0050fcf0cd1b8f332</id>
<content type='text'>
`if (CurrentForm != NULL)` and
`if (InScopeDisable &amp;&amp; (CurrentForm == NULL))`conflict.

`if (CurrentForm != NULL)` should be `if (CurrentExpression != NULL)`.

Signed-off-by: Yang Gang &lt;yanggang@byosoft.com.cn&gt;
</content>
</entry>
<entry>
<title>MdeModulePkg: Fix regressions from 11686, 11687, 11688, 11689.</title>
<updated>2025-12-06T09:54:37+00:00</updated>
<author>
<name>Aaron Pop</name>
<email>aaronpop@microsoft.com</email>
</author>
<published>2025-11-26T19:57:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=faa0ebc839745f63c4f4948230fa17401f8b46f1'/>
<id>urn:sha1:faa0ebc839745f63c4f4948230fa17401f8b46f1</id>
<content type='text'>
11686, 11687, 11688, 11689 included some inverted conditionals
during the refactor. While the system booted, some behavior
was incorrect based on the inverted conditionals.

Signed-off-by: Aaron Pop &lt;aaronpop@microsoft.com&gt;
</content>
</entry>
<entry>
<title>MdeModulePkg: Fix recently introduced uninitialized variable usage.</title>
<updated>2025-12-02T10:22:46+00:00</updated>
<author>
<name>Aaron Pop</name>
<email>aaronpop@microsoft.com</email>
</author>
<published>2025-11-25T23:03:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=ede299f2413db9af81dc1d2cc8d315ece90afbfd'/>
<id>urn:sha1:ede299f2413db9af81dc1d2cc8d315ece90afbfd</id>
<content type='text'>
Address the build regressions, introduced in #11724, #11688, #11686 #11685.
These build regressions are for uninitialized variables before use.

Signed-off-by: Aaron Pop &lt;aaronpop@microsoft.com&gt;
</content>
</entry>
<entry>
<title>MdeModulePkg: Fix missing NULL tests.</title>
<updated>2025-11-22T20:08:25+00:00</updated>
<author>
<name>Aaron Pop</name>
<email>aaronpop@microsoft.com</email>
</author>
<published>2025-10-22T18:33:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=8c92e6ee806ff7e7e8f561cc2540c755ed3a3495'/>
<id>urn:sha1:8c92e6ee806ff7e7e8f561cc2540c755ed3a3495</id>
<content type='text'>
https://github.com/github/codeql/blob/codeql-cli-2.7.3/cpp/ql/src/Critical/MissingNullTest.qhelp

For items which allocate memory, or get a pointer from another
structure, it is important to validate that the pointers
are not null before they are dereferenced.

Signed-off-by: Aaron Pop &lt;aaronpop@microsoft.com&gt;
</content>
</entry>
<entry>
<title>MdeModulePkg: Fix comparison with wider widths.</title>
<updated>2025-11-22T20:08:25+00:00</updated>
<author>
<name>Aaron Pop</name>
<email>aaronpop@microsoft.com</email>
</author>
<published>2025-10-22T18:33:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=dee7ea0bb14e42d0e1f1d23079993a0c66b7c49f'/>
<id>urn:sha1:dee7ea0bb14e42d0e1f1d23079993a0c66b7c49f</id>
<content type='text'>
https://codeql.github.com/codeql-query-help/cpp/cpp-comparison-with-wider-type

If the narrow type (smaller range) is compared against a wide type
(larger range), the narrow value may overflow before reaching the wide
value. This can cause unexpected behavior, such as:

Infinite loops (loop condition never becomes false).
Incorrect logic (comparison results are misleading).

Signed-off-by: Aaron Pop &lt;aaronpop@microsoft.com&gt;
</content>
</entry>
<entry>
<title>MdeModulePkg: Fix EFI_SUCCESS typos</title>
<updated>2025-06-12T17:50:45+00:00</updated>
<author>
<name>Gao Qihang</name>
<email>gaoqihang@loongson.cn</email>
</author>
<published>2025-06-06T02:42:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=c4bc60b2b721d4297443db59e2653fb4a4e888cf'/>
<id>urn:sha1:c4bc60b2b721d4297443db59e2653fb4a4e888cf</id>
<content type='text'>
EFI_SUCESS -&gt; EFI_SUCCESS
EFI_SUCESSS -&gt; EFI_SUCCESS

Signed-off-by: Gao Qihang &lt;gaoqihang@loongson.cn&gt;
</content>
</entry>
<entry>
<title>MdeModulePkg/SetupBrowserDxe: EFI_BROWSER_ACTION_REQUEST_QUESTION_APPLY</title>
<updated>2024-01-24T15:57:35+00:00</updated>
<author>
<name>Ming Tan</name>
<email>ming.tan@intel.com</email>
</author>
<published>2024-01-02T02:22:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=588cfc63d235b0b4c7ba8ebae2a7e3787e62b1e7'/>
<id>urn:sha1:588cfc63d235b0b4c7ba8ebae2a7e3787e62b1e7</id>
<content type='text'>
REF: UEFI_Spec_2_10_Aug29.pdf page 1695.

In 35.5.4 EFI_HII_CONFIG_ACCESS_PROTOCOL.CallBack():
If the callback function returns with the ActionRequest set to
_QUESTION_APPLY, then the Forms Browser will write the current modified
question value on the selected form to storage.

Update the SetupBrowserDxe, if callback function return
EFI_BROWSER_ACTION_REQUEST_QUESTION_APPLY, then call SetQuestionValue
with GetSetValueWithHiiDriver to apply the change immediately.

Signed-off-by: Ming Tan &lt;ming.tan@intel.com&gt;
Cc: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Cc: Dandan Bi &lt;dandan.bi@intel.com&gt;
Reviewed-by: Dandan Bi &lt;dandan.bi@intel.com&gt;
Reviewed-by: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
</content>
</entry>
<entry>
<title>MdeModulePkg/SetupBrowser: Load storage via GetVariable for EfiVarStore</title>
<updated>2023-08-03T12:12:27+00:00</updated>
<author>
<name>Dandan Bi</name>
<email>dandan.bi@intel.com</email>
</author>
<published>2023-07-25T05:41:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/Tianocore/edk2.git/commit/?id=7672d1cca58228b0cb7f099e8863aa3a44ae45db'/>
<id>urn:sha1:7672d1cca58228b0cb7f099e8863aa3a44ae45db</id>
<content type='text'>
For EfiVarStore (EFI_HII_VARSTORE_EFI_VARIABLE_BUFFER), it will call
ExtractConfig-GetVariable-HiiBlockToConfig-ConfigToBlock when load storage
value in LoadStorage function. It's not necessary and costs lots of time
to do the conversion between config and block.
So now enhance it to call GetVariable directly.

Cc: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Cc: Eric Dong &lt;eric.dong@intel.com&gt;
Signed-off-by: Dandan Bi &lt;dandan.bi@intel.com&gt;
Reviewed-by: Liming Gao &lt;gaoliming@byosoft.com.cn&gt;
Reviewed-by: Eric Dong &lt;eric.dong@intel.com&gt;
</content>
</entry>
</feed>
