From ad1c573678fa7a9acb02fe6050a19d96c88ee55e Mon Sep 17 00:00:00 2001 From: Wojtek Figat Date: Thu, 25 May 2023 00:12:54 +0200 Subject: [PATCH] Fix false-positive error when interop structure has a additional memory size (alignment) --- Source/Engine/Engine/NativeInterop.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/Engine/Engine/NativeInterop.cs b/Source/Engine/Engine/NativeInterop.cs index 52dc82fce..4f9822570 100644 --- a/Source/Engine/Engine/NativeInterop.cs +++ b/Source/Engine/Engine/NativeInterop.cs @@ -706,7 +706,7 @@ namespace FlaxEngine.Interop MarshalHelper.toManagedFieldMarshallers[i](MarshalHelper.marshallableFields[i], ref managedValue, fieldPtr, out int fieldOffset); fieldPtr += fieldOffset; } - Assert.IsTrue((fieldPtr - nativePtr) == Unsafe.SizeOf()); + Assert.IsTrue((fieldPtr - nativePtr) <= Unsafe.SizeOf()); } else managedValue = Unsafe.Read(nativePtr.ToPointer()); @@ -745,7 +745,7 @@ namespace FlaxEngine.Interop MarshalHelper.toNativeFieldMarshallers[i](MarshalHelper.marshallableFields[i], ref managedValue, nativePtr, out int fieldOffset); nativePtr += fieldOffset; } - Assert.IsTrue((nativePtr - fieldPtr) == Unsafe.SizeOf()); + Assert.IsTrue((nativePtr - fieldPtr) <= Unsafe.SizeOf()); } else Unsafe.AsRef(nativePtr.ToPointer()) = managedValue;