}\r
\r
CommandLineCopy = StrnCatGrow(&CommandLineCopy, NULL, NewCommandLine, 0);\r
+ if (CommandLineCopy == NULL) {\r
+ return (EFI_OUT_OF_RESOURCES);\r
+ }\r
Status = EFI_SUCCESS;\r
Split = NULL;\r
FirstLocation = CommandLineCopy + StrLen(CommandLineCopy);\r
//\r
if (!EFI_ERROR(Status) && StdInVarName != NULL) {\r
TempHandle = CreateFileInterfaceEnv(StdInVarName);\r
- if (!InUnicode) {\r
- TempHandle = CreateFileInterfaceFile(TempHandle, FALSE);\r
- }\r
- Size = 0;\r
- ASSERT(TempHandle != NULL);\r
- if (((EFI_FILE_PROTOCOL*)TempHandle)->Read(TempHandle, &Size, NULL) != EFI_BUFFER_TOO_SMALL) {\r
- Status = EFI_INVALID_PARAMETER;\r
+ if (TempHandle == NULL) {\r
+ Status = EFI_OUT_OF_RESOURCES;\r
} else {\r
- ShellParameters->StdIn = TempHandle;\r
- gST->ConIn = CreateSimpleTextInOnFile(TempHandle, &gST->ConsoleInHandle);\r
+ if (!InUnicode) {\r
+ TempHandle = CreateFileInterfaceFile(TempHandle, FALSE);\r
+ }\r
+ Size = 0;\r
+ if (((EFI_FILE_PROTOCOL*)TempHandle)->Read(TempHandle, &Size, NULL) != EFI_BUFFER_TOO_SMALL) {\r
+ Status = EFI_INVALID_PARAMETER;\r
+ } else {\r
+ ShellParameters->StdIn = TempHandle;\r
+ gST->ConIn = CreateSimpleTextInOnFile(TempHandle, &gST->ConsoleInHandle);\r
+ }\r
}\r
}\r
\r