Search Issue Tracker
Won't Fix
Won't Fix in 2023.2.X
Votes
0
Found in
2022.2.15f1
2023.2.0a6
Issue ID
UUM-33671
Regression
Yes
Crash on MergePrefabChanges when opening scenes
Reproduction steps:
1. Open the attached user's project ("Or..Client.zip")
2. Select UniCorn -> Scenes Window -> WorldScene
Expected result: The scene is opened
Actual result: The Editor crashes
Reproducible with: 2022.2.0a9, 2022.2.15f1, 2023.2.0a6
Not reproducible with:2020.3.46f1, 2021.3.22f1, 2022.2.0a8
Reproducible on: macOS 13.3.1 (Intel)
Stacktrace:
0x00007ff774b45db1 (Unity) MergePrefabChanges
0x00007ff774b284cd (Unity) MergePrefabInternal
0x00007ff774b24904 (Unity) MergeAllPrefabInstanceInfosDuringLoad
0x00007ff774b25ac2 (Unity) MergeAllPrefabInstancesDuringLoad
0x00007ff77391232a (Unity) LoadSceneOperation::CompleteAwakeSequence
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
- Out-of-bounds memory access with multiple CanvasRenderers under a Canvas when using Mesh API
- Inspector tries to access file after it was deleted when the file was locked in Inspector window
- Changing Transform values in Search window Inspector loses focus while dragging and stopping mouse without releasing dragging action
- Saving changes on the dirty VFX Graph during the Play mode throws "The referenced script (Unknown) on this Behaviour is missing!" warnings
- VFX Graph Debug Info overlaps the "Initialize" block debug info by default
Resolution Note:
The issue is caused by a call to AssetDatabase.RenameAsset() in OnValidate() in OrionInputDefinition.cs. The scene opens correctly when removing the renaming operation. OnValidate() is meant to validate that data changed, and should not be used for complex tasks that involve asset operations: https://docs.unity3d.com/2022.2/Documentation/ScriptReference/MonoBehaviour.OnValidate.html. Unfortunately we currently don't have a way to fail calls to these operations during OnValidate().
Resolution Note (2023.2.X):
The issue is caused by a call to AssetDatabase.RenameAsset() in OnValidate() in OrionInputDefinition.cs. The scene opens correctly when removing the renaming operation. OnValidate() is meant to validate that data changed, and should not be used for complex tasks that involve asset operations: https://docs.unity3d.com/2022.2/Documentation/ScriptReference/MonoBehaviour.OnValidate.html. Unfortunately we currently don't have a way to fail calls to these operations during OnValidate().