//\r
// Open the file and populate the data buffer.\r
//\r
- ShellStatus = ShellOpenFileByName(\r
+ Status = ShellOpenFileByName(\r
FileName,\r
&FileHandle,\r
EFI_FILE_MODE_READ,\r
0);\r
- if (ShellStatus == SHELL_SUCCESS) {\r
- ShellStatus = ShellGetFileSize(FileHandle, &Intermediate);\r
+ if (!EFI_ERROR(Status)) {\r
+ Status = ShellGetFileSize(FileHandle, &Intermediate);\r
}\r
Data = AllocateZeroPool((UINTN)Intermediate);\r
if (Data == NULL) {\r
ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_NO_MEM), gShellInstall1HiiHandle);\r
ShellStatus = SHELL_OUT_OF_RESOURCES;\r
}\r
- if (ShellStatus == SHELL_SUCCESS) {\r
- ShellStatus = ShellReadFile(FileHandle, (UINTN *)&Intermediate, Data);\r
+ if (!EFI_ERROR(Status)) {\r
+ Status = ShellReadFile(FileHandle, (UINTN *)&Intermediate, Data);\r
}\r
} else {\r
Intermediate = StrSize(Data);\r
}\r
\r
- if (ShellStatus == SHELL_SUCCESS && Data != NULL) {\r
+ if (!EFI_ERROR(Status) && ShellStatus == SHELL_SUCCESS && Data != NULL) {\r
Status = UpdateOptionalData(CurrentOrder[OptionIndex], (UINTN)Intermediate, (UINT8*)Data, Target);\r
if (EFI_ERROR(Status)) {\r
ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_BCFG_SET_VAR_FAIL), gShellInstall1HiiHandle, VariableName, Status);\r
ShellStatus = SHELL_INVALID_PARAMETER;\r
} \r
}\r
+ if (EFI_ERROR(Status) && ShellStatus == SHELL_SUCCESS) {\r
+ ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_BCFG_SET_VAR_FAIL), gShellInstall1HiiHandle, VariableName, Status);\r
+ ShellStatus = SHELL_INVALID_PARAMETER;\r
+ } \r
}\r
\r
SHELL_FREE_NON_NULL(Data);\r