+ Flag = FALSE;\r
+ //\r
+ // Check the FontInfoMask to see whether it is retrieving system info.\r
+ //\r
+ if ((StringInfo->FontInfoMask & (EFI_FONT_INFO_SYS_FONT | EFI_FONT_INFO_ANY_FONT)) == 0) {\r
+ if (StrCmp (StringInfo->FontInfo.FontName, SystemDefault->FontInfo.FontName) != 0) {\r
+ goto Exit;\r
+ }\r
+ }\r
+ if ((StringInfo->FontInfoMask & (EFI_FONT_INFO_SYS_SIZE | EFI_FONT_INFO_ANY_SIZE)) == 0) {\r
+ if (StringInfo->FontInfo.FontSize != SystemDefault->FontInfo.FontSize) {\r
+ goto Exit;\r
+ }\r
+ }\r
+ if ((StringInfo->FontInfoMask & (EFI_FONT_INFO_SYS_STYLE | EFI_FONT_INFO_ANY_STYLE)) == 0) {\r
+ if (StringInfo->FontInfo.FontStyle != SystemDefault->FontInfo.FontStyle) {\r
+ goto Exit;\r
+ }\r
+ }\r
+ if ((StringInfo->FontInfoMask & EFI_FONT_INFO_SYS_FORE_COLOR) == 0) {\r
+ if (CompareMem (\r
+ &StringInfo->ForegroundColor, \r
+ &SystemDefault->ForegroundColor, \r
+ sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL)\r
+ ) != 0) {\r
+ goto Exit;\r
+ }\r
+ }\r
+ if ((StringInfo->FontInfoMask & EFI_FONT_INFO_SYS_BACK_COLOR) == 0) {\r
+ if (CompareMem (\r
+ &StringInfo->BackgroundColor, \r
+ &SystemDefault->BackgroundColor, \r
+ sizeof (EFI_GRAPHICS_OUTPUT_BLT_PIXEL)\r
+ ) != 0) {\r
+ goto Exit;\r
+ }\r
+ }\r
+\r
+ Flag = TRUE;\r
+\r
+Exit:\r
+ if (SystemInfo == NULL) {\r
+ SafeFreePool (SystemDefault); \r
+ }\r
+ return Flag;\r