Search Issue Tracker
Fixed
Fixed in 2.5.X -Collections
Votes
0
Found in [Package]
2.5.1 - Collections
Issue ID
ECSB-1430
Regression
No
Silent crash when compiling job structs with NativeContainers that contain a struct with a static field of its own type
How to reproduce:
1. Open the “CrashRepro“ project
Reproducible with: 2.5.1 (2022.3.53f1, 6000.0.28f1, 6000.1.0a5)
Couldn’t test with: 2.5.1 (2021.3.46f1) (Errors in the Console)
Reproducible on: macOS 14.6.1 Sonoma (Intel), Windows 11 (reported by user)
Not reproducible on: No other environment tested
Note: Commenting out “public MassModel model;“ in the “/Assets/Elements/Systems/MassUpdateSystem.cs“ Script will stop the crash from reproducing
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
- Warnings in the Bug Reporter window are cut off and not truncated when the Bug Reporter window is resized to its minimum size
- Color is incorrectly applied to objects when initialized with non-normalized parameters
- SerializationUtility.GetManagedReferencesWithMissingTypes() don't return null when “Prefab has missing SerializeReference Types“ warning banner is present
- Memory leak when VFX Graph is open and Camera has "Target Texture" enabled
- The Canvas component's warning box is missing an apostrophe when Additional Shader Channels is set to "Normal" and "Tangent" with Render Mode set to "Screen Space - Overlay"
Resolution Note (fix version 2.5.X -Collections):
When ComputeReflectionDataJob searches through a job struct recursively, looking for a field named m_Safety, GetOffsetForFieldName will recurse down static fields. If a struct has a static field of the same type (for example, int2 has a static int2 zero field), GetOffsetForFieldName will infinitely recurse until the editor segfaults while trying to allocate.
This is easily solved by only recursing down instance fields and skipping static fields.
This has been fixed in versions 2022.3.60f1, 6000.0.41f1, 6000.1.0b9, and 6000.2.0a4. A package update should not be required.