Reproduction steps:
1. Open the attached “repro-project“ and import the TMP Essential Resources
2. Build And Run the project using IL2CPP Scripting Backend
3. In the Player select the “Button” UI GameObject (positioned in the middle of the screen)
Expected result: A green button UI GameObject is successfully spawned below the clicked UI GameObject
Actual result: The Player crashes
Reproducible with: 2021.3.33f1, 2022.3.15f1, 2023.2.3f1, 2023.3.0a17
Not reproducible with: 2022.2.20f1
Regressed in: 2022.2.21f1
Reproduced on: Windows 10, Windows 11 (by reporter)
Not reproducible on: No other environment tested
Notes:
1. Not reproducible with Mono Scripting Backend
2. Crashing occurs during the marshaling of a class object from C# code into a C++ library due to an attempted memset operation on a nullptr
First few lines of the stack trace:
0x00007FF9F5981B8D (VCRUNTIME140D) memset
0x00007FF9FBDC1687 (Dll1) GetPacket
0x00007FF97EB9B0A5 (GameAssembly) CallDLL_CallDLLMethod_m448E712D6BD5F94555972465EA7F31EC9F9CCAB6
0x00007FF97F51A52A (GameAssembly) UnityEvent_Invoke_mFBF80D59B03C30C5FE6A06F897D954ACADE061D2
0x00007FF97EC512D9 (GameAssembly) ExecuteEvents_Execute_TisRuntimeObject_mDC4455B743BE4A6BA46DD741D0E0AB150FF1209A_gshared