]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ShellPkg/Library/UefiShellDriver1CommandsLib/Devices.c
ShellPkg/Dp: Add null pointer check
[mirror_edk2.git] / ShellPkg / Library / UefiShellDriver1CommandsLib / Devices.c
index f962bf40c056042f43e0a271e67e9925fd319639..b725178ebd151cf4e43e589320a3a710c3b45acc 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Main file for devices shell Driver1 function.\r
 \r
-  (C) Copyright 2012-2014, Hewlett-Packard Development Company, L.P.\r
+  (C) Copyright 2012-2015 Hewlett-Packard Development Company, L.P.<BR>\r
   Copyright (c) 2010 - 2014, Intel Corporation. All rights reserved.<BR>\r
   This program and the accompanying materials\r
   are licensed and made available under the terms and conditions of the BSD License\r
@@ -42,7 +42,6 @@
   @retval EFI_INVALID_PARAMETER A parameter was invalid.\r
 **/\r
 EFI_STATUS\r
-EFIAPI\r
 GetDeviceHandleInfo (\r
   IN EFI_HANDLE   TheHandle,\r
   IN OUT CHAR16   *Type,\r
@@ -169,7 +168,7 @@ ShellCommandRunDevices (
   Status = ShellCommandLineParse (ParamList, &Package, &ProblemParam, TRUE);\r
   if (EFI_ERROR(Status)) {\r
     if (Status == EFI_VOLUME_CORRUPTED && ProblemParam != NULL) {\r
-      ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_PROBLEM), gShellDriver1HiiHandle, ProblemParam);\r
+      ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_PROBLEM), gShellDriver1HiiHandle, L"devices", ProblemParam);  \r
       FreePool(ProblemParam);\r
       ShellStatus = SHELL_INVALID_PARAMETER;\r
     } else {\r
@@ -183,7 +182,7 @@ ShellCommandRunDevices (
       //\r
       // error for too many parameters\r
       //\r
-      ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_TOO_MANY), gShellDriver1HiiHandle);\r
+      ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_TOO_MANY), gShellDriver1HiiHandle, L"devices");  \r
       ShellStatus = SHELL_INVALID_PARAMETER;\r
     } else {\r
       //\r
@@ -199,7 +198,7 @@ ShellCommandRunDevices (
 //        AsciiSPrint(Language, 10, "en-us");\r
       } else {\r
         ASSERT(Language == NULL);\r
-        ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_NO_VALUE), gShellDriver1HiiHandle, L"-l");\r
+        ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_GEN_NO_VALUE), gShellDriver1HiiHandle, L"devices",  L"-l");  \r
         ShellCommandLineFreeVarList (Package);\r
         return (SHELL_INVALID_PARAMETER);\r
       }\r
@@ -250,6 +249,11 @@ ShellCommandRunDevices (
         if (Name != NULL) {\r
           FreePool(Name);\r
         }\r
+        if (ShellGetExecutionBreakFlag ()) {\r
+          ShellStatus = SHELL_ABORTED;\r
+          break;\r
+        }\r
+        \r
       }\r
 \r
       if (HandleList != NULL) {\r