summaryrefslogtreecommitdiffstats
path: root/ShellPkg/Library/UefiShellDriver1CommandsLib/Disconnect.c
diff options
context:
space:
mode:
Diffstat (limited to 'ShellPkg/Library/UefiShellDriver1CommandsLib/Disconnect.c')
-rw-r--r--ShellPkg/Library/UefiShellDriver1CommandsLib/Disconnect.c28
1 files changed, 14 insertions, 14 deletions
diff --git a/ShellPkg/Library/UefiShellDriver1CommandsLib/Disconnect.c b/ShellPkg/Library/UefiShellDriver1CommandsLib/Disconnect.c
index fac6463e3c..2204abacc1 100644
--- a/ShellPkg/Library/UefiShellDriver1CommandsLib/Disconnect.c
+++ b/ShellPkg/Library/UefiShellDriver1CommandsLib/Disconnect.c
@@ -98,7 +98,10 @@ ShellCommandRunDisconnect (
UINT64 Intermediate2;
UINT64 Intermediate3;
- ShellStatus = SHELL_SUCCESS;
+ Intermediate1 = 0;
+ Intermediate2 = 0;
+ Intermediate3 = 0;
+ ShellStatus = SHELL_SUCCESS;
//
// initialize the shell lib (we must be in non-auto-init...)
@@ -160,25 +163,22 @@ ShellCommandRunDisconnect (
Param1 = ShellCommandLineGetRawValue (Package, 1);
Param2 = ShellCommandLineGetRawValue (Package, 2);
Param3 = ShellCommandLineGetRawValue (Package, 3);
-
- if (Param1 && !EFI_ERROR (ShellConvertStringToUint64 (Param1, &Intermediate1, TRUE, FALSE))) {
- Handle1 = ConvertHandleIndexToHandle ((UINTN)Intermediate1);
- } else {
- Handle1 = NULL;
+ if (Param1 != NULL) {
+ ShellConvertStringToUint64 (Param1, &Intermediate1, TRUE, FALSE);
}
- if (Param2 && !EFI_ERROR (ShellConvertStringToUint64 (Param2, &Intermediate2, TRUE, FALSE))) {
- Handle2 = ConvertHandleIndexToHandle ((UINTN)Intermediate2);
- } else {
- Handle2 = NULL;
+ Handle1 = Param1 != NULL ? ConvertHandleIndexToHandle ((UINTN)Intermediate1) : NULL;
+ if (Param2 != NULL) {
+ ShellConvertStringToUint64 (Param2, &Intermediate2, TRUE, FALSE);
}
- if (Param3 && !EFI_ERROR (ShellConvertStringToUint64 (Param3, &Intermediate3, TRUE, FALSE))) {
- Handle3 = ConvertHandleIndexToHandle ((UINTN)Intermediate3);
- } else {
- Handle3 = NULL;
+ Handle2 = Param2 != NULL ? ConvertHandleIndexToHandle ((UINTN)Intermediate2) : NULL;
+ if (Param3 != NULL) {
+ ShellConvertStringToUint64 (Param3, &Intermediate3, TRUE, FALSE);
}
+ Handle3 = Param3 != NULL ? ConvertHandleIndexToHandle ((UINTN)Intermediate3) : NULL;
+
if ((Param1 != NULL) && (Handle1 == NULL)) {
ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_INV_HANDLE), gShellDriver1HiiHandle, L"disconnect", Param1);
ShellStatus = SHELL_INVALID_PARAMETER;