Search Issue Tracker
By Design
Votes
0
Found in
2019.2.0b6
2019.3.0a1
Issue ID
1158288
Regression
Yes
[Improved prefabs] Joint prefab loses all data when its prefab is deleted from the project
A joint prefab which is applied as an override to another prefab loses all data when its prefab is deleted from the project. Refer the attached video.
Steps to reproduce:
1) Create a new project
2) Create an empty gameObject > Create a prefab out of it. Call it prefab 'A'.
3) Create an empty gameObject > Add component Character Joint > Create a prefab of this gameObject. Call this prefab 'B'.
4) Add B as a child of A > Apply override.
5) Duplicate prefab B
6) Delete prefab B from the project
Actual result: Prefab B which was overridden loses all data in hierarchy and creates an empty child gameObject as well.
Expected result: Prefab loses instance in hierarchy as it's been deleted from the project.
Occurs on: 2019.3.0a4, 2019.3.0a1
Not reproducible on: 2019.2.0b4
Environment: Both Windows and Mac
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 (2019.3.X):
This behavior is by design. There is no data loss as the data for the component is stored in the Prefab Asset only, so when that asset is deleted by the user, the user has deleted the data themselves.
The reason there is left-over GameObjects and for the nested Prefab a dummy child object as well, is to retain enough information to be able to restore all data if the deleted asset is restored again, for example via version control or via dragging it out of the trash and back into the project in its original location.