diff options
author | ydong10 <ydong10@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-04-26 02:00:30 +0000 |
---|---|---|
committer | ydong10 <ydong10@6f19259b-4bc3-4df7-8a09-765794883524> | 2012-04-26 02:00:30 +0000 |
commit | 8d3000031dfc8b1d529e97d4471782bf636a84bf (patch) | |
tree | 44de59bd82468770e1117ba9e8ac04846cd0ac30 /ShellPkg/Library/UefiShellDebug1CommandsLib | |
parent | e0192326ae23083b14c2502314dc3a4809528efa (diff) | |
download | edk2-platforms-8d3000031dfc8b1d529e97d4471782bf636a84bf.tar.xz |
Enhance code to more safely and follow coding style.
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Jaben Carsey <Jaben.carsey@intel.com>
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13221 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'ShellPkg/Library/UefiShellDebug1CommandsLib')
-rw-r--r-- | ShellPkg/Library/UefiShellDebug1CommandsLib/Bcfg.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/ShellPkg/Library/UefiShellDebug1CommandsLib/Bcfg.c b/ShellPkg/Library/UefiShellDebug1CommandsLib/Bcfg.c index 4d2fbfa843..fcf5b5014c 100644 --- a/ShellPkg/Library/UefiShellDebug1CommandsLib/Bcfg.c +++ b/ShellPkg/Library/UefiShellDebug1CommandsLib/Bcfg.c @@ -107,6 +107,7 @@ UpdateOptionalDataDebug1( //
// Allocate new struct and discard old optional data.
//
+ ASSERT (OriginalData != NULL);
OriginalOptionDataSize = sizeof(UINT32) + sizeof(UINT16) + StrSize(((CHAR16*)(OriginalData + sizeof(UINT32) + sizeof(UINT16))));
OriginalOptionDataSize += (*(UINT16*)(OriginalData + sizeof(UINT32)));
OriginalOptionDataSize -= OriginalSize;
@@ -139,8 +140,8 @@ UpdateOptionalDataDebug1( /**
This function will get a CRC for a boot option.
- @param[in, out] Crc The CRC value to return.
- @param[in] Index The boot option index to CRC.
+ @param[in, out] Crc The CRC value to return.
+ @param[in] BootIndex The boot option index to CRC.
@retval EFI_SUCCESS The CRC was sucessfully returned.
@retval other A error occured.
@@ -779,6 +780,11 @@ BcfgAddOptDebug1( ShellStatus = SHELL_INVALID_PARAMETER;
} else {
FileName = StrnCatGrow(&FileName, NULL, Walker+1, 0);
+ if (FileName == NULL) {
+ ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_OUT_MEM), gShellDebug1HiiHandle);
+ ShellStatus = SHELL_OUT_OF_RESOURCES;
+ return (ShellStatus);
+ }
Temp2 = StrStr(FileName, L"\"");
ASSERT(Temp2 != NULL);
Temp2[0] = CHAR_NULL;
|