Fix unpacking marshaled field value

#2790
This commit is contained in:
Wojtek Figat
2024-07-25 16:50:01 +02:00
parent 41fd7b724e
commit 1e43b031ba

View File

@@ -850,11 +850,7 @@ namespace FlaxEngine.Interop
{
object fieldOwner = fieldOwnerHandle.Target;
FieldHolder field = Unsafe.As<FieldHolder>(fieldHandle.Target);
object value = null;
if (field.field.FieldType.IsValueType)
value = Marshal.PtrToStructure(valuePtr, field.field.FieldType);
else if (valuePtr != IntPtr.Zero)
value = ManagedHandle.FromIntPtr(valuePtr).Target;
object value = MarshalToManaged(valuePtr, field.field.FieldType);
field.field.SetValue(fieldOwner, value);
}