// Retrive uncommitted data from Form Browser\r
//\r
CurrentFakeNVMap = (BMM_FAKE_NV_DATA *) HiiGetBrowserData (&mBootMaintGuid, mBootMaintStorageName, sizeof (BMM_FAKE_NV_DATA));\r
- if (CurrentFakeNVMap == NULL) {\r
- return EFI_NOT_FOUND;\r
+ DisMap = (UINT8 *) CurrentFakeNVMap;\r
+ for (Index = 0; Index < sizeof (BMM_FAKE_NV_DATA); Index ++) {\r
+ if (DisMap [Index] != 0) {\r
+ break;\r
+ }\r
+ }\r
+ \r
+ if (Index == sizeof (BMM_FAKE_NV_DATA)) {\r
+ FreePool (CurrentFakeNVMap);\r
+ CurrentFakeNVMap = &Private->BmmFakeNvData;\r
}\r
\r
//\r
//\r
// Update local settting.\r
//\r
- if (CurrentFakeNVMap != NULL) {\r
+ if (CurrentFakeNVMap != &Private->BmmFakeNvData) {\r
CopyMem (&Private->BmmFakeNvData, CurrentFakeNVMap, sizeof (BMM_FAKE_NV_DATA));\r
FreePool (CurrentFakeNVMap);\r
}\r