RedfishPkg/RedfishPlatformConfigDxe: fix can not set one-of option issue.

StatementValue->Buffer is converted from ASCII to Unicode by caller
already so we don't have to convert it again.

Signed-off-by: Nickle Wang <nicklew@nvidia.com>
Cc: Abner Chang <abner.chang@amd.com>
Cc: Igor Kulchytskyy <igork@ami.com>
Cc: Nick Ramirez <nramirez@nvidia.com>
Reviewed-by: Igor Kulchytskyy <igork@ami.com>
This commit is contained in:
Nickle Wang 2023-07-21 21:39:10 +08:00 committed by mergify[bot]
parent b844b106e2
commit 4a1afea6f7
1 changed files with 5 additions and 6 deletions

View File

@ -1660,12 +1660,11 @@ RedfishPlatformConfigSetStatementCommon (
// in string format from HII point of view. Do a patch here. // in string format from HII point of view. Do a patch here.
// //
if ((TargetStatement->HiiStatement->Operand == EFI_IFR_ONE_OF_OP) && (StatementValue->Type == EFI_IFR_TYPE_STRING)) { if ((TargetStatement->HiiStatement->Operand == EFI_IFR_ONE_OF_OP) && (StatementValue->Type == EFI_IFR_TYPE_STRING)) {
TempBuffer = StrToUnicodeStr ((CHAR8 *)StatementValue->Buffer); //
if (TempBuffer == NULL) { // Keep input buffer to TempBuffer because StatementValue will be
return EFI_OUT_OF_RESOURCES; // assigned in HiiStringToOneOfOptionValue().
} //
TempBuffer = (EFI_STRING)StatementValue->Buffer;
FreePool (StatementValue->Buffer);
StatementValue->Buffer = NULL; StatementValue->Buffer = NULL;
StatementValue->BufferLen = 0; StatementValue->BufferLen = 0;