Fix unboxing of array type Variants

This commit is contained in:
2024-05-05 13:15:31 +03:00
parent 9d830eb1e2
commit e77ae12b9b
8 changed files with 41 additions and 6 deletions

View File

@@ -586,8 +586,17 @@ namespace FlaxEngine.Interop
internal static ManagedHandle GetArrayTypeFromElementType(ManagedHandle elementTypeHandle)
{
Type elementType = Unsafe.As<TypeHolder>(elementTypeHandle.Target);
Type classType = ArrayFactory.GetArrayType(elementType);
return GetTypeManagedHandle(classType);
Type arrayType = ArrayFactory.GetArrayType(elementType);
return GetTypeManagedHandle(arrayType);
}
[UnmanagedCallersOnly]
internal static ManagedHandle GetArrayTypeFromWrappedArray(ManagedHandle arrayHandle)
{
ManagedArray managedArray = Unsafe.As<ManagedArray>(arrayHandle.Target);
Type elementType = managedArray.ArrayType.GetElementType();
Type arrayType = ArrayFactory.GetArrayType(elementType);
return GetTypeManagedHandle(arrayType);
}
[UnmanagedCallersOnly]