On 01/14/20 14:08, Laszlo Ersek wrote: > Hi Dandan, Brian, > > On 01/14/20 09:56, Dandan Bi wrote: >> From: Brian R Haug <brian.r.h...@intel.com> >> >> Update data type of variables which save the opcode numbers >> to UINTN, in case some configuration module has lots of >> configuration items. >> >> Cc: Liming Gao <liming....@intel.com> >> Cc: Eric Dong <eric.d...@intel.com> >> Signed-off-by: Brian R Haug <brian.r.h...@intel.com> >> Reviewed-by: Dandan Bi <dandan...@intel.com> >> --- >> .../Universal/SetupBrowserDxe/IfrParse.c | 18 +++++++++--------- >> 1 file changed, 9 insertions(+), 9 deletions(-) >> >> diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c >> b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c >> index 891b95cf9f..edb6a0fc4c 100644 >> --- a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c >> +++ b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c >> @@ -1,17 +1,17 @@ >> /** @file >> Parser for IFR binary encoding. >> >> -Copyright (c) 2007 - 2019, Intel Corporation. All rights reserved.<BR> >> +Copyright (c) 2007 - 2020, Intel Corporation. All rights reserved.<BR> >> SPDX-License-Identifier: BSD-2-Clause-Patent >> >> **/ >> >> #include "Setup.h" >> >> -UINT16 mStatementIndex; >> -UINT16 mExpressionOpCodeIndex; >> +UINTN mStatementIndex; >> +UINTN mExpressionOpCodeIndex; >> EFI_QUESTION_ID mUsedQuestionId; >> extern LIST_ENTRY gBrowserStorageList; >> /** >> Initialize Statement header members. >> >> @@ -1104,16 +1104,16 @@ IsUnKnownOpCode ( >> >> **/ >> VOID >> CountOpCodes ( >> IN FORM_BROWSER_FORMSET *FormSet, >> - IN OUT UINT16 *NumberOfStatement, >> - IN OUT UINT16 *NumberOfExpression >> + OUT UINTN *NumberOfStatement, >> + OUT UINTN *NumberOfExpression >> ) >> { >> - UINT16 StatementCount; >> - UINT16 ExpressionCount; >> + UINTN StatementCount; >> + UINTN ExpressionCount; >> UINT8 *OpCodeData; >> UINTN Offset; >> UINTN OpCodeLen; >> >> Offset = 0; >> @@ -1167,12 +1167,12 @@ ParseOpCodes ( >> FORMSET_STORAGE *Storage; >> FORMSET_DEFAULTSTORE *DefaultStore; >> QUESTION_DEFAULT *CurrentDefault; >> QUESTION_OPTION *CurrentOption; >> UINT8 Width; >> - UINT16 NumberOfStatement; >> - UINT16 NumberOfExpression; >> + UINTN NumberOfStatement; >> + UINTN NumberOfExpression; >> EFI_IMAGE_ID *ImageId; >> BOOLEAN SuppressForQuestion; >> BOOLEAN SuppressForOption; >> UINT16 DepthOfDisable; >> BOOLEAN OpCodeDisabled; >> > > I think this patch is incomplete. While the following statements will > adapt automatically: > > FormSet->StatementBuffer = AllocateZeroPool (NumberOfStatement * sizeof > (FORM_BROWSER_STATEMENT)); > > FormSet->ExpressionBuffer = AllocateZeroPool (NumberOfExpression * sizeof > (EXPRESSION_OPCODE)); > > I think we'll need to update the indexing into those arrays explicitly. > Namely, > >> diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c >> b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c >> index 891b95cf9fb8..9b241ded8cdc 100644 >> --- a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c >> +++ b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c >> @@ -8,8 +8,8 @@ SPDX-License-Identifier: BSD-2-Clause-Patent >> >> #include "Setup.h" >> >> -UINT16 mStatementIndex; >> -UINT16 mExpressionOpCodeIndex; >> +UINTN mStatementIndex; >> +UINTN mExpressionOpCodeIndex; >> EFI_QUESTION_ID mUsedQuestionId; >> extern LIST_ENTRY gBrowserStorageList; >> /** > > Do you agree?
Aargh, I missed that that's exactly how the patch starts! Sorry about the noise :) Reviewed-by: Laszlo Ersek <ler...@redhat.com> Thanks Laszlo -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#53226): https://edk2.groups.io/g/devel/message/53226 Mute This Topic: https://groups.io/mt/69690491/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-