BMM_CALLBACK_DATA *Private;\r
BM_MENU_ENTRY *NewMenuEntry;\r
BMM_FAKE_NV_DATA *CurrentFakeNVMap;\r
+ BMM_FAKE_NV_DATA *OldFakeNVMap;\r
UINTN Index;\r
EFI_DEVICE_PATH_PROTOCOL * File;\r
\r
// Retrive uncommitted data from Form Browser\r
//\r
CurrentFakeNVMap = &Private->BmmFakeNvData;\r
+ OldFakeNVMap = &Private->BmmOldFakeNVData;\r
HiiGetBrowserData (&mBootMaintGuid, mBootMaintStorageName, sizeof (BMM_FAKE_NV_DATA), (UINT8 *) CurrentFakeNVMap);\r
\r
if (Action == EFI_BROWSER_ACTION_CHANGING) {\r
//\r
// Discard changes and exit formset\r
//\r
- CurrentFakeNVMap->DriverOptionalData[0] = 0x0000;\r
- CurrentFakeNVMap->DriverDescriptionData[0] = 0x0000;\r
+ ZeroMem (CurrentFakeNVMap->DriverOptionalData, sizeof (CurrentFakeNVMap->DriverOptionalData));\r
+ ZeroMem (CurrentFakeNVMap->BootDescriptionData, sizeof (CurrentFakeNVMap->BootDescriptionData));\r
+ ZeroMem (OldFakeNVMap->DriverOptionalData, sizeof (OldFakeNVMap->DriverOptionalData));\r
+ ZeroMem (OldFakeNVMap->DriverDescriptionData, sizeof (OldFakeNVMap->DriverDescriptionData));\r
CurrentFakeNVMap->DriverOptionChanged = FALSE;\r
CurrentFakeNVMap->ForceReconnect = TRUE;\r
*ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_DISCARD_EXIT;\r
//\r
// Discard changes and exit formset\r
//\r
- CurrentFakeNVMap->BootOptionalData[0] = 0x0000;\r
- CurrentFakeNVMap->BootDescriptionData[0] = 0x0000;\r
+ ZeroMem (CurrentFakeNVMap->BootOptionalData, sizeof (CurrentFakeNVMap->BootOptionalData));\r
+ ZeroMem (CurrentFakeNVMap->BootDescriptionData, sizeof (CurrentFakeNVMap->BootDescriptionData));\r
+ ZeroMem (OldFakeNVMap->BootOptionalData, sizeof (OldFakeNVMap->BootOptionalData));\r
+ ZeroMem (OldFakeNVMap->BootDescriptionData, sizeof (OldFakeNVMap->BootDescriptionData));\r
CurrentFakeNVMap->BootOptionChanged = FALSE;\r
*ActionRequest = EFI_BROWSER_ACTION_REQUEST_FORM_DISCARD_EXIT;\r
} else if (QuestionId == KEY_VALUE_BOOT_DESCRIPTION || QuestionId == KEY_VALUE_BOOT_OPTION) {\r
// through HiiSetBrowserData function.\r
//\r
CallbackData->BmmFakeNvData.BootOptionDel[Index] = FALSE;\r
+ CallbackData->BmmOldFakeNVData.BootOptionDel[Index] = FALSE;\r
}\r
\r
HiiCreateCheckBoxOpCode (\r
// through HiiSetBrowserData function.\r
//\r
CallbackData->BmmFakeNvData.DriverOptionDel[Index] = FALSE;\r
+ CallbackData->BmmOldFakeNVData.DriverOptionDel[Index] = FALSE;\r
}\r
HiiCreateCheckBoxOpCode (\r
mStartOpCodeHandle,\r
if (!CallbackData->BmmFakeNvData.BootOptionChanged) {\r
ZeroMem (CallbackData->BmmFakeNvData.BootOptionalData, sizeof (CallbackData->BmmFakeNvData.BootOptionalData));\r
ZeroMem (CallbackData->BmmFakeNvData.BootDescriptionData, sizeof (CallbackData->BmmFakeNvData.BootDescriptionData));\r
+ ZeroMem (CallbackData->BmmOldFakeNVData.BootOptionalData, sizeof (CallbackData->BmmOldFakeNVData.BootOptionalData));\r
+ ZeroMem (CallbackData->BmmOldFakeNVData.BootDescriptionData, sizeof (CallbackData->BmmOldFakeNVData.BootDescriptionData));\r
}\r
} else if (FormId == FORM_DRV_ADD_FILE_ID){\r
if (!CallbackData->BmmFakeNvData.DriverOptionChanged) {\r
ZeroMem (CallbackData->BmmFakeNvData.DriverOptionalData, sizeof (CallbackData->BmmFakeNvData.DriverOptionalData));\r
ZeroMem (CallbackData->BmmFakeNvData.DriverDescriptionData, sizeof (CallbackData->BmmFakeNvData.DriverDescriptionData));\r
+ ZeroMem (CallbackData->BmmOldFakeNVData.DriverOptionalData, sizeof (CallbackData->BmmOldFakeNVData.DriverOptionalData));\r
+ ZeroMem (CallbackData->BmmOldFakeNVData.DriverDescriptionData, sizeof (CallbackData->BmmOldFakeNVData.DriverDescriptionData));\r
}\r
}\r
\r