Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Hao Wu <hao.a...@intel.com>
Reviewed-by: Liming Gao <liming....@intel.com>
Reviewed-by: Jaben Carsey <jaben.car...@intel.com>
---
 MdePkg/Library/UefiLib/Console.c      | 6 +++---
 MdePkg/Library/UefiLib/UefiLibPrint.c | 8 ++------
 2 files changed, 5 insertions(+), 9 deletions(-)

diff --git a/MdePkg/Library/UefiLib/Console.c b/MdePkg/Library/UefiLib/Console.c
index 73f9915..ecaf425 100644
--- a/MdePkg/Library/UefiLib/Console.c
+++ b/MdePkg/Library/UefiLib/Console.c
@@ -1,7 +1,7 @@
 /** @file
   This module provide help function for displaying unicode string.
 
-  Copyright (c) 2006 - 2013, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
   This program and the accompanying materials                          
   are licensed and made available under the terms and conditions of the BSD 
License         
   which accompanies this distribution.  The full text of the license may be 
found at        
@@ -517,8 +517,8 @@ CreatePopUp (
       UefiLibGetStringWidth (String, TRUE, MaxLength, &Length);
       TmpString = AllocateZeroPool ((Length + 1) * sizeof (CHAR16));
       ASSERT (TmpString != NULL);
-      StrnCpy(TmpString, String, Length - 3);
-      StrCat (TmpString, L"...");
+      StrnCpyS (TmpString, Length + 1, String, Length - 3);
+      StrCatS (TmpString, Length + 1, L"...");
 
       ConOut->SetCursorPosition (ConOut, Column + 1, Row++);
       ConOut->OutputString (ConOut, TmpString);
diff --git a/MdePkg/Library/UefiLib/UefiLibPrint.c 
b/MdePkg/Library/UefiLib/UefiLibPrint.c
index 1bf6d26..cc41eb0 100644
--- a/MdePkg/Library/UefiLib/UefiLibPrint.c
+++ b/MdePkg/Library/UefiLib/UefiLibPrint.c
@@ -2,7 +2,7 @@
   Mde UEFI library API implementation.
   Print to StdErr or ConOut defined in EFI_SYSTEM_TABLE
 
-  Copyright (c) 2007 - 2012, Intel Corporation. All rights reserved.<BR>
+  Copyright (c) 2007 - 2015, Intel Corporation. All rights reserved.<BR>
   This program and the accompanying materials
   are licensed and made available under the terms and conditions of the BSD 
License
   which accompanies this distribution.  The full text of the license may be 
found at
@@ -754,16 +754,12 @@ CatVSPrint (
     SizeRequired = sizeof(CHAR16) + (CharactersRequired * sizeof(CHAR16));
   }
 
-  BufferToReturn = AllocateZeroPool(SizeRequired);
+  BufferToReturn = AllocateCopyPool(SizeRequired, String);
 
   if (BufferToReturn == NULL) {
     return NULL;
   }
 
-  if (String != NULL) {
-    StrCpy(BufferToReturn, String);
-  }
-
   UnicodeVSPrint(BufferToReturn + StrLen(BufferToReturn), 
(CharactersRequired+1) * sizeof(CHAR16), FormatString, Marker);
 
   ASSERT(StrSize(BufferToReturn)==SizeRequired);
-- 
1.9.5.msysgit.0


------------------------------------------------------------------------------
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

Reply via email to