]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ShellPkg/Library/UefiShellDebug1CommandsLib/UefiShellDebug1CommandsLib.c
pointer verification (not NULL) and buffer overrun fixes.
[mirror_edk2.git] / ShellPkg / Library / UefiShellDebug1CommandsLib / UefiShellDebug1CommandsLib.c
index 226dd903971a794e43309e80ddfeb352ddd1b68f..cccec126b4d9dc20be22752c3a706d9e53daa04a 100644 (file)
@@ -310,7 +310,9 @@ ConvertStringToGuid (
   TempCopy = StrnCatGrow(&TempCopy, NULL, StringGuid, 0);\r
   Walker   = TempCopy;\r
   TempSpot = StrStr(Walker, L"-");\r
-  *TempSpot = CHAR_NULL;\r
+  if (TempSpot != NULL) {\r
+    *TempSpot = CHAR_NULL;\r
+  }\r
   Status = ShellConvertStringToUint64(Walker, &TempVal, TRUE, FALSE);\r
   if (EFI_ERROR(Status)) {\r
     FreePool(TempCopy);\r
@@ -319,7 +321,9 @@ ConvertStringToGuid (
   Guid->Data1 = (UINT32)TempVal;\r
   Walker += 9;\r
   TempSpot = StrStr(Walker, L"-");\r
-  *TempSpot = CHAR_NULL;\r
+  if (TempSpot != NULL) {\r
+    *TempSpot = CHAR_NULL;\r
+  }\r
   Status = ShellConvertStringToUint64(Walker, &TempVal, TRUE, FALSE);\r
   if (EFI_ERROR(Status)) {\r
     FreePool(TempCopy);\r
@@ -328,7 +332,9 @@ ConvertStringToGuid (
   Guid->Data2 = (UINT16)TempVal;\r
   Walker += 5;\r
   TempSpot = StrStr(Walker, L"-");\r
-  *TempSpot = CHAR_NULL;\r
+  if (TempSpot != NULL) {\r
+    *TempSpot = CHAR_NULL;\r
+  }\r
   Status = ShellConvertStringToUint64(Walker, &TempVal, TRUE, FALSE);\r
   if (EFI_ERROR(Status)) {\r
     FreePool(TempCopy);\r