diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c b/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c index cdd32c0ed0..e33081422b 100644 --- a/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c +++ b/MdeModulePkg/Universal/SetupBrowserDxe/Presentation.c @@ -2593,6 +2593,16 @@ SetupBrowser ( // Verify whether question value has checked, update the ValueChanged flag in Question. // IsQuestionValueChanged(gCurrentSelection->FormSet, gCurrentSelection->Form, Statement, GetSetValueWithBuffer); + + // + // If question has EFI_IFR_FLAG_RESET_REQUIRED flag and without storage and process question success till here, + // trig the gResetFlag. + // + if ((Status == EFI_SUCCESS) && + (Statement->Storage == NULL) && + ((Statement->QuestionFlags & EFI_IFR_FLAG_RESET_REQUIRED) != 0)) { + gResetRequired = TRUE; + } } //