Redfish/HiiUtilityLib Fix incorrect type assignment

Replaced direct assignment of 'Value = (EFI_HII_VALUE *)&Question->Value'
with the correct usage of HiiStatementValueToHiiValue function.
This resolves the issue where EFI_HII_VALUE and HII_STATEMENT_VALUE types
are incompatible, ensuring proper handling of Question->Value.

Signed-off-by: Igor Kulchytskyy <igork@ami.com>
This commit is contained in:
Igor Kulchytskyy 2024-12-23 17:13:19 -05:00 committed by mergify[bot]
parent 9e6537469d
commit 0986082d7e

View File

@ -4125,7 +4125,12 @@ EvaluateHiiExpression (
goto Done; goto Done;
} }
Value = (EFI_HII_VALUE *)&Question->Value; Status = HiiStatementValueToHiiValue (&Question->Value, Value);
if (EFI_ERROR (Status)) {
ReleaseHiiValue (Value);
Value->Type = EFI_IFR_TYPE_UNDEFINED;
}
break; break;
case EFI_IFR_SECURITY_OP: case EFI_IFR_SECURITY_OP:
@ -4334,7 +4339,11 @@ EvaluateHiiExpression (
// //
// push the questions' value on to the expression stack // push the questions' value on to the expression stack
// //
Value = (EFI_HII_VALUE *)&Question->Value; Status = HiiStatementValueToHiiValue (&Question->Value, Value);
if (EFI_ERROR (Status)) {
ReleaseHiiValue (Value);
Value->Type = EFI_IFR_TYPE_UNDEFINED;
}
} }
break; break;
@ -4461,7 +4470,12 @@ EvaluateHiiExpression (
break; break;
} }
Value = (EFI_HII_VALUE *)&Question->Value; Status = HiiStatementValueToHiiValue (&Question->Value, Value);
if (EFI_ERROR (Status)) {
ReleaseHiiValue (Value);
Value->Type = EFI_IFR_TYPE_UNDEFINED;
}
break; break;
case EFI_IFR_STRING_REF2_OP: case EFI_IFR_STRING_REF2_OP: