summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/SetupBrowserDxe/Expression.c
diff options
context:
space:
mode:
authorydong10 <ydong10@6f19259b-4bc3-4df7-8a09-765794883524>2012-07-06 02:27:33 +0000
committerydong10 <ydong10@6f19259b-4bc3-4df7-8a09-765794883524>2012-07-06 02:27:33 +0000
commit816a71105872156c572ced295de25774051cd700 (patch)
tree090b1e71fc1a7489639c228e9ea99620e34eaebd /MdeModulePkg/Universal/SetupBrowserDxe/Expression.c
parent6e7ba5e34a100b5bee76d07f6d6a56c71b7052b8 (diff)
downloadedk2-platforms-816a71105872156c572ced295de25774051cd700.tar.xz
When do discard action, enable callback action for questions which have value changed.
Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13509 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdeModulePkg/Universal/SetupBrowserDxe/Expression.c')
-rw-r--r--MdeModulePkg/Universal/SetupBrowserDxe/Expression.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Expression.c b/MdeModulePkg/Universal/SetupBrowserDxe/Expression.c
index b9034fa2e0..ff46fcbc5a 100644
--- a/MdeModulePkg/Universal/SetupBrowserDxe/Expression.c
+++ b/MdeModulePkg/Universal/SetupBrowserDxe/Expression.c
@@ -891,7 +891,7 @@ IdToQuestion (
// to keep synchronous, always reload the Question Value.
//
if (Question->Storage->Type == EFI_HII_VARSTORE_EFI_VARIABLE) {
- GetQuestionValue (FormSet, Form, Question, FALSE);
+ GetQuestionValue (FormSet, Form, Question, GetSetValueWithHiiDriver);
}
return Question;
@@ -2142,7 +2142,7 @@ GetQuestionValueFromForm (
//
// Get the question value.
//
- Status = GetQuestionValue(FormSet, Form, Question, FALSE);
+ Status = GetQuestionValue(FormSet, Form, Question, GetSetValueWithHiiDriver);
if (EFI_ERROR (Status)) {
GetTheVal = FALSE;
goto Done;
@@ -2343,7 +2343,7 @@ EvaluateExpression (
//
// Get value from string except for STRING value.
//
- Status = GetValueByName (OpCode->VarStorage, OpCode->ValueName, &StrPtr);
+ Status = GetValueByName (OpCode->VarStorage, OpCode->ValueName, &StrPtr, GetSetValueWithEditBuffer);
if (!EFI_ERROR (Status)) {
ASSERT (StrPtr != NULL);
TempLength = StrLen (StrPtr);
@@ -2796,7 +2796,7 @@ EvaluateExpression (
for (Index = 0; Index < OpCode->ValueWidth; Index ++, TempBuffer --) {
StrPtr += UnicodeValueToString (StrPtr, PREFIX_ZERO | RADIX_HEX, *TempBuffer, 2);
}
- Status = SetValueByName (OpCode->VarStorage, OpCode->ValueName, NameValue, TRUE);
+ Status = SetValueByName (OpCode->VarStorage, OpCode->ValueName, NameValue, GetSetValueWithEditBuffer);
FreePool (NameValue);
if (!EFI_ERROR (Status)) {
Data1.Value.b = TRUE;