The logic is good to me. One minor comment below. How about save "AsciiStrSize (TokenSpaceName) + AsciiStrSize (PcdName)" to one local variable, for example:
UINTN NameSize; ... NameSize = AsciiStrSize (TokenSpaceName) + AsciiStrSize (PcdName); Thanks, Star -----Original Message----- From: Qiu, Shumin Sent: Thursday, June 25, 2015 3:47 PM To: edk2-devel@lists.sourceforge.net Cc: Zeng, Star; Fan, Jeff; Gao, Liming; Ni, Ruiyu; Tian, Feng Subject: [PATCH 10/13] MdeModulePkg/Universal/PCD: Use safe string functions to refine code. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Qiu Shumin <shumin....@intel.com> --- MdeModulePkg/Universal/PCD/Dxe/Service.c | 4 ++-- MdeModulePkg/Universal/PCD/Pei/Service.c | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/MdeModulePkg/Universal/PCD/Dxe/Service.c b/MdeModulePkg/Universal/PCD/Dxe/Service.c index cf5f244..23f304e 100644 --- a/MdeModulePkg/Universal/PCD/Dxe/Service.c +++ b/MdeModulePkg/Universal/PCD/Dxe/Service.c @@ -193,9 +193,9 @@ GetPcdName ( // // Catenate TokenSpaceCName and PcdCName with a '.' to form the full PCD name. // - AsciiStrCat (Name, TokenSpaceName); + AsciiStrCatS (Name, AsciiStrSize (TokenSpaceName) + AsciiStrSize + (PcdName), TokenSpaceName); Name[AsciiStrSize (TokenSpaceName) - sizeof (CHAR8)] = '.'; - AsciiStrCat (Name, PcdName); + AsciiStrCatS (Name, AsciiStrSize (TokenSpaceName) + AsciiStrSize + (PcdName), PcdName); } return Name; diff --git a/MdeModulePkg/Universal/PCD/Pei/Service.c b/MdeModulePkg/Universal/PCD/Pei/Service.c index 83309a6..59aca25 100644 --- a/MdeModulePkg/Universal/PCD/Pei/Service.c +++ b/MdeModulePkg/Universal/PCD/Pei/Service.c @@ -149,9 +149,9 @@ GetPcdName ( // // Catenate TokenSpaceCName and PcdCName with a '.' to form the full PCD name. // - AsciiStrCat (Name, TokenSpaceName); + AsciiStrCatS (Name, AsciiStrSize (TokenSpaceName) + AsciiStrSize + (PcdName), TokenSpaceName); Name[AsciiStrSize (TokenSpaceName) - sizeof (CHAR8)] = '.'; - AsciiStrCat (Name, PcdName); + AsciiStrCatS (Name, AsciiStrSize (TokenSpaceName) + AsciiStrSize + (PcdName), PcdName); } return Name; -- 1.9.5.msysgit.1 ------------------------------------------------------------------------------ Monitor 25 network devices or servers for free with OpManager! OpManager is web-based network management software that monitors network devices and physical & virtual servers, alerts via email & sms for fault. Monitor 25 devices for free with no restriction. Download now http://ad.doubleclick.net/ddm/clk/292181274;119417398;o _______________________________________________ edk2-devel mailing list edk2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/edk2-devel