]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/C/Common/MyAlloc.c
BaseTools/C/Common: Avoid possible NULL pointer dereference
[mirror_edk2.git] / BaseTools / Source / C / Common / MyAlloc.c
index eabba5790d2e0248f1e4b0899394fdbceee2da6f..be7c515a6067dd72b6f9782f5c17bbd1e1e71821 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
 File for memory allocation tracking functions.\r
 \r
-Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2004 - 2016, 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
 which accompanies this distribution.  The full text of the license may be found at        \r
@@ -73,7 +73,18 @@ MyCheck (
   //\r
   // Check parameters.\r
   //\r
-  if (File == NULL || Line == 0) {\r
+  if (File == NULL) {\r
+    printf (\r
+      "\nMyCheck(Final=%u, File=NULL, Line=%u)"\r
+      "Invalid parameter(s).\n",\r
+      Final,\r
+      (unsigned)Line\r
+      );\r
+\r
+    exit (1);\r
+  }\r
+\r
+  if (Line == 0) {\r
     printf (\r
       "\nMyCheck(Final=%u, File=%s, Line=%u)"\r
       "Invalid parameter(s).\n",\r
@@ -190,7 +201,18 @@ MyAlloc (
   //\r
   // Check for invalid parameters.\r
   //\r
-  if (Size == 0 || File == NULL || Line == 0) {\r
+  if (File == NULL) {\r
+    printf (\r
+      "\nMyAlloc(Size=%u, File=NULL, Line=%u)"\r
+      "\nInvalid parameter(s).\n",\r
+      (unsigned)Size,\r
+      (unsigned)Line\r
+      );\r
+\r
+    exit (1);\r
+  }\r
+\r
+  if (Size == 0 || Line == 0) {\r
     printf (\r
       "\nMyAlloc(Size=%u, File=%s, Line=%u)"\r
       "\nInvalid parameter(s).\n",\r
@@ -303,7 +325,19 @@ MyRealloc (
   //\r
   // Check for invalid parameter(s).\r
   //\r
-  if (Size == 0 || File == NULL || Line == 0) {\r
+  if (File == NULL) {\r
+    printf (\r
+      "\nMyRealloc(Ptr=%p, Size=%u, File=NULL, Line=%u)"\r
+      "\nInvalid parameter(s).\n",\r
+      Ptr,\r
+      (unsigned)Size,\r
+      (unsigned)Line\r
+      );\r
+\r
+    exit (1);\r
+  }\r
+\r
+  if (Size == 0 || Line == 0) {\r
     printf (\r
       "\nMyRealloc(Ptr=%p, Size=%u, File=%s, Line=%u)"\r
       "\nInvalid parameter(s).\n",\r
@@ -408,7 +442,18 @@ MyFree (
   //\r
   // Check for invalid parameter(s).\r
   //\r
-  if (File == NULL || Line == 0) {\r
+  if (File == NULL) {\r
+    printf (\r
+      "\nMyFree(Ptr=%p, File=NULL, Line=%u)"\r
+      "\nInvalid parameter(s).\n",\r
+      Ptr,\r
+      (unsigned)Line\r
+      );\r
+\r
+    exit (1);\r
+  }\r
+\r
+  if (Line == 0) {\r
     printf (\r
       "\nMyFree(Ptr=%p, File=%s, Line=%u)"\r
       "\nInvalid parameter(s).\n",\r