Search Issue Tracker
Fixed
Fixed in 2021.3.28f1, 2022.2.21f1, 2023.1.0b18, 2023.2.0a15
Votes
1
Found in
2021.3.24f1
2022.2.17f1
2023.1.0b13
2023.2.0a12
Issue ID
UUM-33942
Regression
No
Blittable classes are not being pinned and passed directly to the native code when using IL2CPP Scripting Backend
How to reproduce:
1. Open the "IN_38621" project
2. Press File -> Build Settings -> Build
3. In the build folder open the "Il2CppOutputProject\Source\Assembly-CSharp.cpp" script
Expected result: blittable classes are pinned and passed directly to the native code
Actual result: generated code creates a marshalled object on the stack and passes a pointer to the native code
Reproducible with: 2021.3.16f1, 2021.3.24f1, 2022.2.17f1, 2023.1.0b13, 2023.2.0a12
Not reproducible with: 2020.3.47f1, 2021.3.15f1
Testing environment: Windows 10 Pro
Notes:
- Also reproducible on Android
- Not reproducible on WebGL
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Search field in UI Builder's Library has no character limit
- Changing the value in UI Builder by dragging increases it by a few thousand points when reaching the borders of the screen
- ARM64 architecture DLL incorrectly copied instead of x64 when building for Windows x64
- Crash on TypeTreeIterator::GetNode when opening a specific folder
- Crash on WriteSerializedAssetsV2 when (re)entering the Play Mode in a specific project when IEnumerator Start() is used
cgrigoras
Nov 29, 2023 14:32
We're pretty certain this fix breaks our game and prevents us from upgrading Unity version, more details here: https://forum.unity.com/threads/il2cpp-class-object-interop-marshalling-fails.1521271/