Changeset 99404 in vbox for trunk/src/VBox/Devices/EFI/FirmwareNew/ShellPkg/Library/UefiShellLevel3CommandsLib/Pause.c
- Timestamp:
- Apr 14, 2023 3:17:44 PM (2 years ago)
- svn:sync-xref-src-repo-rev:
- 156854
- Location:
- trunk/src/VBox/Devices/EFI/FirmwareNew
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/EFI/FirmwareNew
-
Property svn:mergeinfo
changed from (toggle deleted branches)
to (toggle deleted branches)/vendor/edk2/current 103735-103757,103769-103776,129194-145445 /vendor/edk2/current 103735-103757,103769-103776,129194-156846
-
Property svn:mergeinfo
changed from (toggle deleted branches)
-
trunk/src/VBox/Devices/EFI/FirmwareNew/ShellPkg/Library/UefiShellLevel3CommandsLib/Pause.c
r80721 r99404 10 10 #include "UefiShellLevel3CommandsLib.h" 11 11 12 STATIC CONST SHELL_PARAM_ITEM ParamList[] = {13 { L"-q", TypeFlag},14 { NULL, TypeMax}15 12 STATIC CONST SHELL_PARAM_ITEM ParamList[] = { 13 { L"-q", TypeFlag }, 14 { NULL, TypeMax } 15 }; 16 16 17 17 /** … … 28 28 ) 29 29 { 30 EFI_STATUS Status;31 LIST_ENTRY *Package;32 CHAR16 *ProblemParam;33 SHELL_STATUS ShellStatus;34 SHELL_PROMPT_RESPONSE 30 EFI_STATUS Status; 31 LIST_ENTRY *Package; 32 CHAR16 *ProblemParam; 33 SHELL_STATUS ShellStatus; 34 SHELL_PROMPT_RESPONSE *Resp; 35 35 36 ProblemParam 37 ShellStatus 38 Resp 36 ProblemParam = NULL; 37 ShellStatus = SHELL_SUCCESS; 38 Resp = NULL; 39 39 40 40 // 41 41 // initialize the shell lib (we must be in non-auto-init...) 42 42 // 43 Status = ShellInitialize ();44 ASSERT_EFI_ERROR (Status);43 Status = ShellInitialize (); 44 ASSERT_EFI_ERROR (Status); 45 45 46 Status = CommandInit ();47 ASSERT_EFI_ERROR (Status);46 Status = CommandInit (); 47 ASSERT_EFI_ERROR (Status); 48 48 49 if (!gEfiShellProtocol->BatchIsActive ()) {50 ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_NO_SCRIPT), gShellLevel3HiiHandle, L"pause");49 if (!gEfiShellProtocol->BatchIsActive ()) { 50 ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_NO_SCRIPT), gShellLevel3HiiHandle, L"pause"); 51 51 return (SHELL_UNSUPPORTED); 52 52 } … … 56 56 // 57 57 Status = ShellCommandLineParse (ParamList, &Package, &ProblemParam, TRUE); 58 if (EFI_ERROR (Status)) {59 if ( Status == EFI_VOLUME_CORRUPTED && ProblemParam != NULL) {60 ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_PROBLEM), gShellLevel3HiiHandle, L"pause", ProblemParam);61 FreePool (ProblemParam);58 if (EFI_ERROR (Status)) { 59 if ((Status == EFI_VOLUME_CORRUPTED) && (ProblemParam != NULL)) { 60 ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_PROBLEM), gShellLevel3HiiHandle, L"pause", ProblemParam); 61 FreePool (ProblemParam); 62 62 ShellStatus = SHELL_INVALID_PARAMETER; 63 63 } else { 64 ASSERT (FALSE);64 ASSERT (FALSE); 65 65 } 66 66 } else { … … 68 68 // check for "-?" 69 69 // 70 if (ShellCommandLineGetFlag (Package, L"-?")) {71 ASSERT (FALSE);72 } else if (ShellCommandLineGetRawValue (Package, 1) != NULL) {73 ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_TOO_MANY), gShellLevel3HiiHandle, L"pause");70 if (ShellCommandLineGetFlag (Package, L"-?")) { 71 ASSERT (FALSE); 72 } else if (ShellCommandLineGetRawValue (Package, 1) != NULL) { 73 ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_TOO_MANY), gShellLevel3HiiHandle, L"pause"); 74 74 ShellStatus = SHELL_INVALID_PARAMETER; 75 75 } else { 76 if (!ShellCommandLineGetFlag (Package, L"-q")) {77 Status = ShellPromptForResponseHii (ShellPromptResponseTypeQuitContinue, STRING_TOKEN (STR_PAUSE_PROMPT), gShellLevel3HiiHandle, (VOID**)&Resp);76 if (!ShellCommandLineGetFlag (Package, L"-q")) { 77 Status = ShellPromptForResponseHii (ShellPromptResponseTypeQuitContinue, STRING_TOKEN (STR_PAUSE_PROMPT), gShellLevel3HiiHandle, (VOID **)&Resp); 78 78 } else { 79 Status = ShellPromptForResponse (ShellPromptResponseTypeQuitContinue, NULL, (VOID**)&Resp);79 Status = ShellPromptForResponse (ShellPromptResponseTypeQuitContinue, NULL, (VOID **)&Resp); 80 80 } 81 81 82 if (EFI_ERROR (Status) || Resp == NULL || *Resp == ShellPromptResponseQuit) {83 ShellCommandRegisterExit (TRUE, 0);82 if (EFI_ERROR (Status) || (Resp == NULL) || (*Resp == ShellPromptResponseQuit)) { 83 ShellCommandRegisterExit (TRUE, 0); 84 84 ShellStatus = SHELL_ABORTED; 85 85 } 86 86 87 87 if (Resp != NULL) { 88 FreePool (Resp);88 FreePool (Resp); 89 89 } 90 90 } … … 96 96 } 97 97 98 99 98 return (ShellStatus); 100 99 } 101
Note:
See TracChangeset
for help on using the changeset viewer.