X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdeModulePkg%2FUniversal%2FSetupBrowserDxe%2FSetup.c;h=4896a076a57f5ae159242dd5e1d75f8296abe8fc;hp=740ee50d0b82a3a29c8db96d77ae1242b71f6bac;hb=e2100bfa651cd0d1295ef13451b9cf4adddb8bfa;hpb=7b546f7480c39e72d230970cf114ab333c912eb7 diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c index 740ee50d0b..4896a076a5 100644 --- a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c +++ b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.c @@ -2077,7 +2077,11 @@ LoadFormConfig ( if (EFI_ERROR (Status)) { return Status; } - + + if ((Question->Operand == EFI_IFR_STRING_OP) || (Question->Operand == EFI_IFR_PASSWORD_OP)) { + HiiSetString (FormSet->HiiHandle, Question->HiiValue.Value.string, (CHAR16*)Question->BufferValue, NULL); + } + // // Check whether EfiVarstore with CallBack can be got. // @@ -2109,12 +2113,7 @@ LoadFormConfig ( ActionRequest = EFI_BROWSER_ACTION_REQUEST_NONE; HiiValue = &Question->HiiValue; BufferValue = (UINT8 *) &Question->HiiValue.Value; - if (HiiValue->Type == EFI_IFR_TYPE_STRING) { - // - // Create String in HII database for Configuration Driver to retrieve - // - HiiValue->Value.string = NewString ((CHAR16 *) Question->BufferValue, FormSet->HiiHandle); - } else if (HiiValue->Type == EFI_IFR_TYPE_BUFFER) { + if (HiiValue->Type == EFI_IFR_TYPE_BUFFER) { BufferValue = Question->BufferValue; } @@ -2126,14 +2125,6 @@ LoadFormConfig ( (EFI_IFR_TYPE_VALUE *) BufferValue, &ActionRequest ); - - if (HiiValue->Type == EFI_IFR_TYPE_STRING) { - // - // Clean the String in HII Database - // - DeleteString (HiiValue->Value.string, FormSet->HiiHandle); - } - if (!EFI_ERROR (Status)) { switch (ActionRequest) { case EFI_BROWSER_ACTION_REQUEST_RESET: