MdeModulePkg:Use safe string functions
Replace unsafe String functions with new added safe string functions Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Dandan Bi <dandan.bi@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17724 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
Implementation for EFI_HII_FONT_PROTOCOL.
|
||||
|
||||
|
||||
Copyright (c) 2007 - 2014, 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
|
||||
@@ -933,16 +933,18 @@ SaveFontName (
|
||||
)
|
||||
{
|
||||
UINTN FontInfoLen;
|
||||
UINTN NameSize;
|
||||
|
||||
ASSERT (FontName != NULL && FontInfo != NULL);
|
||||
|
||||
FontInfoLen = sizeof (EFI_FONT_INFO) - sizeof (CHAR16) + StrSize (FontName);
|
||||
NameSize = StrSize (FontName);
|
||||
FontInfoLen = sizeof (EFI_FONT_INFO) - sizeof (CHAR16) + NameSize;
|
||||
*FontInfo = (EFI_FONT_INFO *) AllocateZeroPool (FontInfoLen);
|
||||
if (*FontInfo == NULL) {
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
}
|
||||
|
||||
StrCpy ((*FontInfo)->FontName, FontName);
|
||||
StrCpyS ((*FontInfo)->FontName, NameSize / sizeof (CHAR16), FontName);
|
||||
return EFI_SUCCESS;
|
||||
}
|
||||
|
||||
@@ -971,6 +973,7 @@ GetSystemFont (
|
||||
{
|
||||
EFI_FONT_DISPLAY_INFO *Info;
|
||||
UINTN InfoSize;
|
||||
UINTN NameSize;
|
||||
|
||||
if (Private == NULL || Private->Signature != HII_DATABASE_PRIVATE_DATA_SIGNATURE) {
|
||||
return EFI_INVALID_PARAMETER;
|
||||
@@ -982,7 +985,8 @@ GetSystemFont (
|
||||
//
|
||||
// The standard font always has the name "sysdefault".
|
||||
//
|
||||
InfoSize = sizeof (EFI_FONT_DISPLAY_INFO) - sizeof (CHAR16) + StrSize (L"sysdefault");
|
||||
NameSize = StrSize (L"sysdefault");
|
||||
InfoSize = sizeof (EFI_FONT_DISPLAY_INFO) - sizeof (CHAR16) + NameSize;
|
||||
Info = (EFI_FONT_DISPLAY_INFO *) AllocateZeroPool (InfoSize);
|
||||
if (Info == NULL) {
|
||||
return EFI_OUT_OF_RESOURCES;
|
||||
@@ -993,7 +997,7 @@ GetSystemFont (
|
||||
Info->FontInfoMask = EFI_FONT_INFO_SYS_FONT | EFI_FONT_INFO_SYS_SIZE | EFI_FONT_INFO_SYS_STYLE;
|
||||
Info->FontInfo.FontStyle = 0;
|
||||
Info->FontInfo.FontSize = EFI_GLYPH_HEIGHT;
|
||||
StrCpy (Info->FontInfo.FontName, L"sysdefault");
|
||||
StrCpyS (Info->FontInfo.FontName, NameSize / sizeof (CHAR16), L"sysdefault");
|
||||
|
||||
*FontInfo = Info;
|
||||
if (FontInfoSize != NULL) {
|
||||
@@ -2310,6 +2314,7 @@ HiiStringIdToImage (
|
||||
EFI_STRING String;
|
||||
UINTN StringSize;
|
||||
UINTN FontLen;
|
||||
UINTN NameSize;
|
||||
EFI_FONT_INFO *StringFontInfo;
|
||||
EFI_FONT_DISPLAY_INFO *NewStringInfo;
|
||||
CHAR8 TempSupportedLanguages;
|
||||
@@ -2432,7 +2437,8 @@ HiiStringIdToImage (
|
||||
// StringFontInfo equals NULL means system default font attaches with the string block.
|
||||
//
|
||||
if (StringFontInfo != NULL && IsSystemFontInfo (Private, (EFI_FONT_DISPLAY_INFO *) StringInfo, NULL, NULL)) {
|
||||
FontLen = sizeof (EFI_FONT_DISPLAY_INFO) - sizeof (CHAR16) + StrSize (StringFontInfo->FontName);
|
||||
NameSize = StrSize (StringFontInfo->FontName);
|
||||
FontLen = sizeof (EFI_FONT_DISPLAY_INFO) - sizeof (CHAR16) + NameSize;
|
||||
NewStringInfo = AllocateZeroPool (FontLen);
|
||||
if (NewStringInfo == NULL) {
|
||||
Status = EFI_OUT_OF_RESOURCES;
|
||||
@@ -2441,7 +2447,7 @@ HiiStringIdToImage (
|
||||
NewStringInfo->FontInfoMask = EFI_FONT_INFO_SYS_FORE_COLOR | EFI_FONT_INFO_SYS_BACK_COLOR;
|
||||
NewStringInfo->FontInfo.FontStyle = StringFontInfo->FontStyle;
|
||||
NewStringInfo->FontInfo.FontSize = StringFontInfo->FontSize;
|
||||
StrCpy (NewStringInfo->FontInfo.FontName, StringFontInfo->FontName);
|
||||
StrCpyS (NewStringInfo->FontInfo.FontName, NameSize / sizeof (CHAR16), StringFontInfo->FontName);
|
||||
|
||||
Status = HiiStringToImage (
|
||||
This,
|
||||
|
Reference in New Issue
Block a user