+\r
+ if (ShellCommandLineGetFlag (Package, L"-n")) {\r
+ TempParam = ShellCommandLineGetValue (Package, L"-n");\r
+ if (TempParam == NULL) {\r
+ ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_NO_VALUE), gShellDebug1HiiHandle, L"comp", L"-n");\r
+ ShellStatus = SHELL_INVALID_PARAMETER;\r
+ } else {\r
+ if (gUnicodeCollation->StriColl (gUnicodeCollation, (CHAR16 *)TempParam, L"all") == 0) {\r
+ DifferentCount = MAX_UINTN;\r
+ } else {\r
+ Status = ShellConvertStringToUint64 (TempParam, &DifferentCount, FALSE, TRUE);\r
+ if (EFI_ERROR(Status) || DifferentCount == 0) {\r
+ ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_PROBLEM_VAL), gShellDebug1HiiHandle, L"comp", TempParam, L"-n");\r
+ ShellStatus = SHELL_INVALID_PARAMETER;\r
+ }\r
+ }\r
+ }\r
+ }\r
+\r
+ if (ShellCommandLineGetFlag (Package, L"-s")) {\r
+ TempParam = ShellCommandLineGetValue (Package, L"-s");\r
+ if (TempParam == NULL) {\r
+ ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_NO_VALUE), gShellDebug1HiiHandle, L"comp", L"-s");\r
+ ShellStatus = SHELL_INVALID_PARAMETER;\r
+ } else {\r
+ Status = ShellConvertStringToUint64 (TempParam, &DifferentBytes, FALSE, TRUE);\r
+ if (EFI_ERROR(Status) || DifferentBytes == 0) {\r
+ ShellPrintHiiEx (-1, -1, NULL, STRING_TOKEN (STR_GEN_PROBLEM_VAL), gShellDebug1HiiHandle, L"comp", TempParam, L"-s");\r
+ ShellStatus = SHELL_INVALID_PARAMETER;\r
+ } else {\r
+ if (DifferentBytes > MAX (Size1, Size2)) {\r
+ DifferentBytes = MAX (Size1, Size2);\r
+ }\r
+ }\r
+ }\r