]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdeModulePkg/Universal/PCD: Use safe string functions to refine code.
authorQiu Shumin <shumin.qiu@intel.com>
Wed, 1 Jul 2015 08:27:03 +0000 (08:27 +0000)
committershenshushi <shenshushi@Edk2>
Wed, 1 Jul 2015 08:27:03 +0000 (08:27 +0000)
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Qiu Shumin <shumin.qiu@intel.com>
Reviewed-by: Star Zeng <star.zeng@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17786 6f19259b-4bc3-4df7-8a09-765794883524

MdeModulePkg/Universal/PCD/Dxe/Service.c
MdeModulePkg/Universal/PCD/Pei/Service.c

index cf5f2444f6e1f08832d6b4d6ab26994e766766b4..eb1e1cef0bea17e87509b6d03395701d96f87c5b 100644 (file)
@@ -142,6 +142,7 @@ GetPcdName (
 {\r
   PCD_DATABASE_INIT *Database;\r
   UINT8             *StringTable;\r
+  UINTN             NameSize;\r
   PCD_NAME_INDEX    *PcdNameIndex;\r
   CHAR8             *TokenSpaceName;\r
   CHAR8             *PcdName;\r
@@ -188,14 +189,15 @@ GetPcdName (
     //\r
     // Need to get the full PCD name.\r
     //\r
-    Name = AllocateZeroPool (AsciiStrSize (TokenSpaceName) + AsciiStrSize (PcdName));\r
+    NameSize = AsciiStrSize (TokenSpaceName) + AsciiStrSize (PcdName);\r
+    Name = AllocateZeroPool (NameSize);\r
     ASSERT (Name != NULL);\r
     //\r
     // Catenate TokenSpaceCName and PcdCName with a '.' to form the full PCD name.\r
     //\r
-    AsciiStrCat (Name, TokenSpaceName);\r
+    AsciiStrCatS (Name, NameSize, TokenSpaceName);\r
     Name[AsciiStrSize (TokenSpaceName) - sizeof (CHAR8)] = '.';\r
-    AsciiStrCat (Name, PcdName);  \r
+    AsciiStrCatS (Name, NameSize, PcdName);  \r
   }\r
 \r
   return Name;\r
index 83309a6f392fe4e6acbd5e62bafa61421595654b..45ce01b1fa736e9025568465bd9691b95c321fe9 100644 (file)
@@ -107,6 +107,7 @@ GetPcdName (
   )\r
 {\r
   UINT8             *StringTable;\r
+  UINTN             NameSize;\r
   PCD_NAME_INDEX    *PcdNameIndex;\r
   CHAR8             *TokenSpaceName;\r
   CHAR8             *PcdName;\r
@@ -144,14 +145,15 @@ GetPcdName (
     //\r
     // Need to get the full PCD name.\r
     //\r
-    Name = AllocateZeroPool (AsciiStrSize (TokenSpaceName) + AsciiStrSize (PcdName));\r
+    NameSize = AsciiStrSize (TokenSpaceName) + AsciiStrSize (PcdName);\r
+    Name = AllocateZeroPool (NameSize);\r
     ASSERT (Name != NULL);\r
     //\r
     // Catenate TokenSpaceCName and PcdCName with a '.' to form the full PCD name.\r
     //\r
-    AsciiStrCat (Name, TokenSpaceName);\r
+    AsciiStrCatS (Name, NameSize, TokenSpaceName);\r
     Name[AsciiStrSize (TokenSpaceName) - sizeof (CHAR8)] = '.';\r
-    AsciiStrCat (Name, PcdName);  \r
+    AsciiStrCatS (Name, NameSize, PcdName);  \r
   }\r
 \r
   return Name;\r