diff --git a/Source/Engine/Engine/NativeInterop.Unmanaged.cs b/Source/Engine/Engine/NativeInterop.Unmanaged.cs index e3d66a2ef..71caee1e9 100644 --- a/Source/Engine/Engine/NativeInterop.Unmanaged.cs +++ b/Source/Engine/Engine/NativeInterop.Unmanaged.cs @@ -891,7 +891,7 @@ namespace FlaxEngine.Interop [UnmanagedCallersOnly] internal static void FieldSetValue(ManagedHandle fieldOwnerHandle, ManagedHandle fieldHandle, IntPtr valuePtr) { - object fieldOwner = fieldOwnerHandle.Target; + object fieldOwner = fieldOwnerHandle.IsAllocated ? fieldOwnerHandle.Target : null; FieldHolder field = Unsafe.As(fieldHandle.Target); object value = MarshalToManaged(valuePtr, field.field.FieldType); field.field.SetValue(fieldOwner, value);