When submit form fail, the progress point to the first fail part in ConfigResp, so should free the ConfigResp after Progrss has been processed.
Cc: Eric Dong <[email protected]> Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Dandan Bi <[email protected]> --- MdeModulePkg/Universal/SetupBrowserDxe/Setup.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c index 23094f8..f649e04 100644 --- a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c +++ b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c @@ -3226,22 +3226,23 @@ SubmitForForm ( Status = mHiiConfigRouting->RouteConfig ( mHiiConfigRouting, ConfigResp, &Progress ); - FreePool (ConfigResp); if (EFI_ERROR (Status)) { // // Submit fail, to get the RestoreConfigRequest and SyncConfigRequest. // SubmitFormFail = TRUE; GetSyncRestoreConfigRequest (ConfigInfo->Storage, ConfigInfo->ConfigRequest, Progress, &ConfigInfo->RestoreConfigRequest, &ConfigInfo->SyncConfigRequest); InsertTailList (&gBrowserSaveFailFormSetList, &ConfigInfo->SaveFailLink); + FreePool (ConfigResp); continue; } + FreePool (ConfigResp); // // 3. Config success, update storage shadow Buffer, only update the data belong to this form. // SynchronizeStorage (ConfigInfo->Storage, ConfigInfo->ConfigRequest, TRUE); } -- 1.9.5.msysgit.1 _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

