X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdeModulePkg%2FUniversal%2FPCD%2FDxe%2FService.c;fp=MdeModulePkg%2FUniversal%2FPCD%2FDxe%2FService.c;h=eb1e1cef0bea17e87509b6d03395701d96f87c5b;hp=cf5f2444f6e1f08832d6b4d6ab26994e766766b4;hb=e85e284e25f09c222fc838e6b298a91268f0b3ec;hpb=f5fc27424b7d7309658a0115c8c5384cff7f4dbd diff --git a/MdeModulePkg/Universal/PCD/Dxe/Service.c b/MdeModulePkg/Universal/PCD/Dxe/Service.c index cf5f2444f6..eb1e1cef0b 100644 --- a/MdeModulePkg/Universal/PCD/Dxe/Service.c +++ b/MdeModulePkg/Universal/PCD/Dxe/Service.c @@ -142,6 +142,7 @@ GetPcdName ( { PCD_DATABASE_INIT *Database; UINT8 *StringTable; + UINTN NameSize; PCD_NAME_INDEX *PcdNameIndex; CHAR8 *TokenSpaceName; CHAR8 *PcdName; @@ -188,14 +189,15 @@ GetPcdName ( // // Need to get the full PCD name. // - Name = AllocateZeroPool (AsciiStrSize (TokenSpaceName) + AsciiStrSize (PcdName)); + NameSize = AsciiStrSize (TokenSpaceName) + AsciiStrSize (PcdName); + Name = AllocateZeroPool (NameSize); ASSERT (Name != NULL); // // Catenate TokenSpaceCName and PcdCName with a '.' to form the full PCD name. // - AsciiStrCat (Name, TokenSpaceName); + AsciiStrCatS (Name, NameSize, TokenSpaceName); Name[AsciiStrSize (TokenSpaceName) - sizeof (CHAR8)] = '.'; - AsciiStrCat (Name, PcdName); + AsciiStrCatS (Name, NameSize, PcdName); } return Name;