Jaben, If and Else are using the same API. I would like to remove CommandInit() completely from the library and update the callers for code cleanup. Do you know whether there will be any potential issue for this update?
Thanks/Ray > -----Original Message----- > From: Carsey, Jaben > Sent: Thursday, July 7, 2016 10:42 PM > To: Ni, Ruiyu <ruiyu...@intel.com> > Cc: edk2-devel-01 <edk2-de...@ml01.01.org>; Laszlo Ersek > <ler...@redhat.com>; Qiu, Shumin <shumin....@intel.com>; Carsey, Jaben > <jaben.car...@intel.com> > Subject: RE: [edk2] [PATCH 4/6] ShellPkg: don't call functions with side > effects in ASSERT_EFI_ERROR() > > We should see why If and Else are using this different API for sure. I don't > remember why. > > I would be happy to remove it completely if there is no objection. > > -Jaben > > > -----Original Message----- > > From: Ni, Ruiyu > > Sent: Thursday, July 07, 2016 1:20 AM > > To: Carsey, Jaben <jaben.car...@intel.com> > > Cc: Carsey, Jaben <jaben.car...@intel.com>; edk2-devel-01 <edk2- > > de...@ml01.01.org>; Laszlo Ersek <ler...@redhat.com>; Qiu, Shumin > > <shumin....@intel.com> > > Subject: RE: [edk2] [PATCH 4/6] ShellPkg: don't call functions with > > side effects in ASSERT_EFI_ERROR() > > Importance: High > > > > Jaben, > > CommandInit() API initializes gUnicodeCollation pointer. > > But ShellCommandLibConstructor() also initializes the > > gUnicodeCollation pointer. > > > > Can we just remove CommandInit() from this library? And update all callers? > > > > Thanks/Ray > > > > > -----Original Message----- > > > From: edk2-devel [mailto:edk2-devel-boun...@lists.01.org] On Behalf > > > Of Carsey, Jaben > > > Sent: Thursday, June 30, 2016 11:13 PM > > > To: Laszlo Ersek <ler...@redhat.com>; Qiu, Shumin > > <shumin....@intel.com> > > > Cc: Carsey, Jaben <jaben.car...@intel.com>; edk2-devel-01 <edk2- > > > de...@ml01.01.org> > > > Subject: Re: [edk2] [PATCH 4/6] ShellPkg: don't call functions with > > > side effects in ASSERT_EFI_ERROR() > > > > > > Reviewed-by: Jaben Carsey <jaben.car...@intel.com> > > > > > > > -----Original Message----- > > > > From: Laszlo Ersek [mailto:ler...@redhat.com] > > > > Sent: Thursday, June 30, 2016 4:07 AM > > > > To: Carsey, Jaben <jaben.car...@intel.com>; Qiu, Shumin > > > > <shumin....@intel.com> > > > > Cc: edk2-devel-01 <edk2-de...@ml01.01.org> > > > > Subject: Re: [edk2] [PATCH 4/6] ShellPkg: don't call functions > > > > with side effects in ASSERT_EFI_ERROR() > > > > Importance: High > > > > > > > > Jaben, Shumin, > > > > > > > > On 06/28/16 15:25, Laszlo Ersek wrote: > > > > > When ASSERT_EFI_ERROR() is compiled out, dependent on build > > > > > flags, only the status checking should be removed; the function > > > > > calls should > > > stay. > > > > > > > > > > Cc: Jaben Carsey <jaben.car...@intel.com> > > > > > Cc: Shumin Qiu <shumin....@intel.com> > > > > > Contributed-under: TianoCore Contribution Agreement 1.0 > > > > > Signed-off-by: Laszlo Ersek <ler...@redhat.com> > > > > > --- > > > > > > > > > > Notes: > > > > > build tested > > > > > > > > > > ShellPkg/Library/UefiShellLevel1CommandsLib/If.c | 10 ++++++++-- > > > > > ShellPkg/Library/UefiShellLib/UefiShellLib.c | 5 ++++- > > > > > 2 files changed, 12 insertions(+), 3 deletions(-) > > > > > > > > Can I please get a maintainer review for this patch? > > > > > > > > Thanks > > > > Laszlo > > > > > > > > > diff --git a/ShellPkg/Library/UefiShellLevel1CommandsLib/If.c > > > > b/ShellPkg/Library/UefiShellLevel1CommandsLib/If.c > > > > > index 7abfd8944b92..dc96bffde7d3 100644 > > > > > --- a/ShellPkg/Library/UefiShellLevel1CommandsLib/If.c > > > > > +++ b/ShellPkg/Library/UefiShellLevel1CommandsLib/If.c > > > > > @@ -991,8 +991,11 @@ ShellCommandRunElse ( > > > > > IN EFI_SYSTEM_TABLE *SystemTable > > > > > ) > > > > > { > > > > > + EFI_STATUS Status; > > > > > SCRIPT_FILE *CurrentScriptFile; > > > > > - ASSERT_EFI_ERROR(CommandInit()); > > > > > + > > > > > + Status = CommandInit (); > > > > > + ASSERT_EFI_ERROR (Status); > > > > > > > > > > if (gEfiShellParametersProtocol->Argc > 1) { > > > > > ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN > > > > > (STR_GEN_TOO_MANY), > > > > gShellLevel1HiiHandle, L"if"); > > > > > @@ -1066,8 +1069,11 @@ ShellCommandRunEndIf ( > > > > > IN EFI_SYSTEM_TABLE *SystemTable > > > > > ) > > > > > { > > > > > + EFI_STATUS Status; > > > > > SCRIPT_FILE *CurrentScriptFile; > > > > > - ASSERT_EFI_ERROR(CommandInit()); > > > > > + > > > > > + Status = CommandInit (); > > > > > + ASSERT_EFI_ERROR (Status); > > > > > > > > > > if (gEfiShellParametersProtocol->Argc > 1) { > > > > > ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN > > > > > (STR_GEN_TOO_MANY), > > > > gShellLevel1HiiHandle, L"if"); > > > > > diff --git a/ShellPkg/Library/UefiShellLib/UefiShellLib.c > > > > b/ShellPkg/Library/UefiShellLib/UefiShellLib.c > > > > > index cf89a4ac87ed..35a1a7169c8b 100644 > > > > > --- a/ShellPkg/Library/UefiShellLib/UefiShellLib.c > > > > > +++ b/ShellPkg/Library/UefiShellLib/UefiShellLib.c > > > > > @@ -373,6 +373,8 @@ EFIAPI > > > > > ShellInitialize ( > > > > > ) > > > > > { > > > > > + EFI_STATUS Status; > > > > > + > > > > > // > > > > > // if auto initialize is not false then skip > > > > > // > > > > > @@ -383,7 +385,8 @@ ShellInitialize ( > > > > > // > > > > > // deinit the current stuff > > > > > // > > > > > - ASSERT_EFI_ERROR(ShellLibDestructor(gImageHandle, gST)); > > > > > + Status = ShellLibDestructor (gImageHandle, gST); > > > > > + ASSERT_EFI_ERROR (Status); > > > > > > > > > > // > > > > > // init the new stuff > > > > > > > > > > > _______________________________________________ > > > edk2-devel mailing list > > > edk2-devel@lists.01.org > > > https://lists.01.org/mailman/listinfo/edk2-devel _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel