DEBUG_CODE(ShellInfoObject.ConsoleInfo = NULL;);\r
}\r
\r
+ if (ShellCommandGetExit()) {\r
+ return ((EFI_STATUS)ShellCommandGetExitCode());\r
+ }\r
return (Status);\r
}\r
\r
BOOLEAN PreCommandEchoState;\r
CONST CHAR16 *CurDir;\r
UINTN LineCount;\r
+ CHAR16 LeString[50];\r
\r
ASSERT(!ShellCommandGetScriptExit());\r
\r
}\r
\r
if (ShellCommandGetScriptExit()) {\r
- ShellCommandRegisterExit(FALSE);\r
+ UnicodeSPrint(LeString, sizeof(LeString)*sizeof(LeString[0]), L"0x%Lx", ShellCommandGetExitCode());\r
+ DEBUG_CODE(InternalEfiShellSetEnv(L"DebugLasterror", LeString, TRUE););\r
+ InternalEfiShellSetEnv(L"Lasterror", LeString, TRUE);\r
+\r
+ ShellCommandRegisterExit(FALSE, 0);\r
Status = EFI_SUCCESS;\r
break;\r
}\r