Reviewed-by: Jaben Carsey <jaben.car...@intel.com> > -----Original Message----- > From: Qiu, Shumin > Sent: Sunday, September 06, 2015 8:06 PM > To: edk2-devel@lists.01.org > Cc: Qiu, Shumin <shumin....@intel.com>; Carsey, Jaben > <jaben.car...@intel.com> > Subject: [PATCH 1/2] ShellPkg: Fix 'for' command fail with multiple fields. > Importance: High > > When multiple fields are found in 'for' command return invalid parameters > error. > > Cc: Jaben Carsey <jaben.car...@intel.com> > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Qiu Shumin <shumin....@intel.com> > --- > ShellPkg/Library/UefiShellLevel1CommandsLib/For.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/ShellPkg/Library/UefiShellLevel1CommandsLib/For.c > b/ShellPkg/Library/UefiShellLevel1CommandsLib/For.c > index 2ecc5cd..cbf0517 100644 > --- a/ShellPkg/Library/UefiShellLevel1CommandsLib/For.c > +++ b/ShellPkg/Library/UefiShellLevel1CommandsLib/For.c > @@ -438,6 +438,11 @@ ShellCommandRunFor ( > gEfiShellParametersProtocol->Argv[2]) == 0) { > for (LoopVar = 0x3 ; LoopVar < gEfiShellParametersProtocol->Argc ; > LoopVar++) { > ASSERT((ArgSet == NULL && ArgSize == 0) || (ArgSet != NULL)); > + if (StrStr (gEfiShellParametersProtocol->Argv[LoopVar], L")") != NULL > && > + (LoopVar + 1) < gEfiShellParametersProtocol->Argc > + ) { > + return (SHELL_INVALID_PARAMETER); > + } > if (ArgSet == NULL) { > // ArgSet = StrnCatGrow(&ArgSet, &ArgSize, L"\"", 0); > } else { > -- > 1.9.5.msysgit.1
_______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel