BOOLEAN mInFrameworkUpdatePakcage = FALSE;\r
UINT64 mGuidCount = 0;\r
\r
+EFI_GUID mGuidBase = { 0x14f95e01, 0xd562, 0x432e, { 0x84, 0x4a, 0x95, 0xa4, 0x39, 0x5, 0x10, 0x7e }};\r
+\r
+\r
\r
/**\r
Get the number of package IFR and STRING packages in the package list passed in.\r
{\r
EFI_STATUS Status;\r
LIST_ENTRY *Link;\r
- HII_THUNK_CONTEXT *ThunkContext;\r
+ HII_THUNK_CONTEXT *ThunkContext;\r
\r
Link = GetFirstNode (&Private->ThunkContextListHead);\r
while (!IsNull (&Private->ThunkContextListHead, Link)) {\r
StringPackageListHeader\r
);\r
ASSERT_EFI_ERROR (Status);\r
- \r
+\r
+ ThunkContext->SharingStringPack = TRUE;\r
+ StringPackageThunkContext->SharingStringPack = TRUE;\r
+\r
}\r
}\r
\r
Link = GetNextNode (&Private->ThunkContextListHead, Link);\r
}\r
- \r
+\r
}\r
\r
/**\r
OUT EFI_GUID * Guid\r
)\r
{\r
- EFI_GUID GuidBase = { 0x14f95e01, 0xd562, 0x432e, { 0x84, 0x4a, 0x95, 0xa4, 0x39, 0x5, 0x10, 0x7e }};\r
-\r
- CopyGuid (Guid, &GuidBase);\r
+ CopyGuid (Guid, &mGuidBase);\r
\r
mGuidCount++; \r
*((UINT64 *) Guid) = *((UINT64 *) Guid) + mGuidCount;\r
LIST_ENTRY *Link;\r
EFI_HII_PACKAGE_LIST_HEADER *StringPackageListHeader;\r
UINTN Size;\r
- HII_THUNK_CONTEXT *ThunkContext;\r
-\r
+ HII_THUNK_CONTEXT *ThunkContext;\r
\r
Link = GetFirstNode (&Private->ThunkContextListHead);\r
\r
ASSERT_EFI_ERROR (Status);\r
\r
FreePool (StringPackageListHeader);\r
+\r
+ IfrThunkContext->SharingStringPack = TRUE;\r
+ ThunkContext->SharingStringPack = TRUE;\r
+ \r
return EFI_SUCCESS;\r
\r
}\r
Link = GetNextNode (&Private->ThunkContextListHead, Link);\r
}\r
\r
+ //\r
+ // A Form Package must have a String Package to function.\r
+ // If ASSERT here, check the sequence of call to Hii->NewPack. \r
+ // String Pack must be registered before Ifr Package is registered.\r
+ //\r
ASSERT (FALSE);\r
return EFI_NOT_FOUND;\r
\r