diff --git a/Source/Engine/Engine/NativeInterop.Unmanaged.cs b/Source/Engine/Engine/NativeInterop.Unmanaged.cs index 52218c2f4..62fd95117 100644 --- a/Source/Engine/Engine/NativeInterop.Unmanaged.cs +++ b/Source/Engine/Engine/NativeInterop.Unmanaged.cs @@ -850,11 +850,7 @@ namespace FlaxEngine.Interop { object fieldOwner = fieldOwnerHandle.Target; FieldHolder field = Unsafe.As(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); }