MdeModulePkg SetupBrowserDxe: Save global variable values before nest function called.

The SendForm function can be called nest in it. This function also uses some global variables. So we must save global variable values before it been called again.

Old implementation miss to save some global variables, this patch fixed it.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Eric Dong <eric.dong@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>

git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18650 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
Eric Dong
2015-10-21 06:10:57 +00:00
committed by ydong10
parent 47022e82e1
commit f4c3c92396
2 changed files with 15 additions and 1 deletions

View File

@@ -5568,6 +5568,10 @@ SaveBrowserContext (
Context->HiiHandle = mCurrentHiiHandle;
Context->FormId = mCurrentFormId;
CopyGuid (&Context->FormSetGuid, &mCurrentFormSetGuid);
Context->SystemLevelFormSet = mSystemLevelFormSet;
Context->CurFakeQestId = mCurFakeQestId;
Context->HiiPackageListUpdated = mHiiPackageListUpdated;
Context->FinishRetrieveCall = mFinishRetrieveCall;
//
// Save the menu history data.
@@ -5625,6 +5629,10 @@ RestoreBrowserContext (
mCurrentHiiHandle = Context->HiiHandle;
mCurrentFormId = Context->FormId;
CopyGuid (&mCurrentFormSetGuid, &Context->FormSetGuid);
mSystemLevelFormSet = Context->SystemLevelFormSet;
mCurFakeQestId = Context->CurFakeQestId;
mHiiPackageListUpdated = Context->HiiPackageListUpdated;
mFinishRetrieveCall = Context->FinishRetrieveCall;
//
// Restore the menu history data.