Fix false-positive error when interop structure has a additional memory size (alignment)
This commit is contained in:
@@ -706,7 +706,7 @@ namespace FlaxEngine.Interop
|
|||||||
MarshalHelper<T>.toManagedFieldMarshallers[i](MarshalHelper<T>.marshallableFields[i], ref managedValue, fieldPtr, out int fieldOffset);
|
MarshalHelper<T>.toManagedFieldMarshallers[i](MarshalHelper<T>.marshallableFields[i], ref managedValue, fieldPtr, out int fieldOffset);
|
||||||
fieldPtr += fieldOffset;
|
fieldPtr += fieldOffset;
|
||||||
}
|
}
|
||||||
Assert.IsTrue((fieldPtr - nativePtr) == Unsafe.SizeOf<T>());
|
Assert.IsTrue((fieldPtr - nativePtr) <= Unsafe.SizeOf<T>());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
managedValue = Unsafe.Read<T>(nativePtr.ToPointer());
|
managedValue = Unsafe.Read<T>(nativePtr.ToPointer());
|
||||||
@@ -745,7 +745,7 @@ namespace FlaxEngine.Interop
|
|||||||
MarshalHelper<T>.toNativeFieldMarshallers[i](MarshalHelper<T>.marshallableFields[i], ref managedValue, nativePtr, out int fieldOffset);
|
MarshalHelper<T>.toNativeFieldMarshallers[i](MarshalHelper<T>.marshallableFields[i], ref managedValue, nativePtr, out int fieldOffset);
|
||||||
nativePtr += fieldOffset;
|
nativePtr += fieldOffset;
|
||||||
}
|
}
|
||||||
Assert.IsTrue((nativePtr - fieldPtr) == Unsafe.SizeOf<T>());
|
Assert.IsTrue((nativePtr - fieldPtr) <= Unsafe.SizeOf<T>());
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
Unsafe.AsRef<T>(nativePtr.ToPointer()) = managedValue;
|
Unsafe.AsRef<T>(nativePtr.ToPointer()) = managedValue;
|
||||||
|
|||||||
Reference in New Issue
Block a user