]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ShellPkg/Library/UefiShellDebug1CommandsLib/HexEdit/HexEdit.c
ShellPkg: Fixed build error 'variable set but not used'
[mirror_edk2.git] / ShellPkg / Library / UefiShellDebug1CommandsLib / HexEdit / HexEdit.c
index 11a11ee9701cd93a3ead70a866a847c840321f97..8cbfd2c8f68a29ad1d8dbf8f67afc759f26170fb 100644 (file)
@@ -43,25 +43,19 @@ ShellCommandRunHexEdit (
   CHAR16                  *ProblemParam;\r
   SHELL_STATUS            ShellStatus;\r
   LIST_ENTRY              *Package;\r
-  CONST CHAR16            *Cwd;\r
   CHAR16                  *NewName;\r
-  CHAR16                  *Spot;\r
   CONST CHAR16            *Name;\r
   UINTN                   Offset;\r
   UINTN                   Size;\r
-  UINT64                  LastOffset;\r
   EDIT_FILE_TYPE          WhatToDo;\r
 \r
   Buffer      = NULL;\r
   ShellStatus = SHELL_SUCCESS;\r
   NewName         = NULL;\r
-  Cwd         = NULL;\r
   Buffer      = NULL;\r
   Name        = NULL;\r
-  Spot        = NULL;\r
   Offset      = 0;\r
   Size        = 0;\r
-  LastOffset  = 0;\r
   WhatToDo    = FileTypeNone;\r
 \r
   //\r
@@ -147,12 +141,15 @@ ShellCommandRunHexEdit (
     }\r
     Name = ShellCommandLineGetRawValue(Package, 1);\r
     if (WhatToDo == FileTypeNone && Name != NULL) {\r
-        if (!IsValidFileName(Name)) {\r
-          ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_PROBLEM), gShellDebug1HiiHandle, Name);\r
-          ShellStatus = SHELL_INVALID_PARAMETER;\r
-        } else {\r
-          WhatToDo  = FileTypeFileBuffer;\r
-        }\r
+      if (ShellCommandLineGetCount(Package) > 2) {\r
+        ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_TOO_MANY), gShellDebug1HiiHandle);\r
+        ShellStatus = SHELL_INVALID_PARAMETER;\r
+      } else if (!IsValidFileName(Name)) {\r
+        ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_PROBLEM), gShellDebug1HiiHandle, Name);\r
+        ShellStatus = SHELL_INVALID_PARAMETER;\r
+      } else {\r
+        WhatToDo  = FileTypeFileBuffer;\r
+      }\r
     } else if (WhatToDo == FileTypeNone) {\r
       if (gEfiShellProtocol->GetCurDir(NULL) == NULL) {\r
         ShellStatus = SHELL_NOT_FOUND;\r
@@ -170,7 +167,7 @@ ShellCommandRunHexEdit (
     } else if (WhatToDo == FileTypeFileBuffer && ShellGetCurrentDir(NULL) == NULL) {\r
       ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_NO_CWD), gShellDebug1HiiHandle);\r
       ShellStatus = SHELL_INVALID_PARAMETER;\r
-    }    \r
+    }\r
 \r
     if (ShellStatus == SHELL_SUCCESS) {\r
       //\r
@@ -186,7 +183,7 @@ ShellCommandRunHexEdit (
         switch (WhatToDo) {\r
         case FileTypeFileBuffer:\r
           Status = HBufferImageRead (\r
-                    Name,\r
+                    Name==NULL?L"":Name,\r
                     NULL,\r
                     0,\r
                     0,\r
@@ -200,7 +197,7 @@ ShellCommandRunHexEdit (
         case FileTypeDiskBuffer:\r
           Status = HBufferImageRead (\r
                     NULL,\r
-                    Name,\r
+                    Name==NULL?L"":Name,\r
                     Offset,\r
                     Size,\r
                     0,\r
@@ -223,6 +220,9 @@ ShellCommandRunHexEdit (
                     );\r
           break;\r
 \r
+        default:\r
+          Status = EFI_NOT_FOUND;\r
+          break;\r
         }\r
         if (!EFI_ERROR (Status)) {\r
           HMainEditorRefresh ();\r
@@ -232,7 +232,7 @@ ShellCommandRunHexEdit (
           //\r
           // back up the status string\r
           //\r
-          Buffer = CatSPrint (NULL, L"%s", StatusBarGetString());\r
+          Buffer = CatSPrint (NULL, L"%s\r\n", StatusBarGetString());\r
         }\r
       }\r
 \r
@@ -258,7 +258,7 @@ ShellCommandRunHexEdit (
             //\r
             // print out the status string\r
             //\r
-            ShellPrintEx(-1, -1, L"%s", gShellDebug1HiiHandle, Buffer);\r
+            ShellPrintEx(-1, -1, L"%s", Buffer);\r
           } else {\r
             ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_HEXEDIT_UNKNOWN_EDITOR), gShellDebug1HiiHandle);\r
           }\r