Search Issue Tracker
Won't Fix
Votes
4
Found in
5.6.0f3
Issue ID
917806
Regression
No
Serialization fails on an serializable class defined internally to a wrapped generic class
How to reproduce:
1. Open user attached project
2. Enter playmode
* - Notice 'All good' in console
3. While in playmode, edit the SerializationTest.cs (comment/uncomment line 32)
4. Return to editor to force recompilation
* - Notice 'Single instance null' in the console
Expected behaviour: The nested class inside a generic class wrapper does not lose reference to the public member when serializing/deserializing
Actual behaviour: The reference to the classRef remains, but the classRef.SingleInstance has been replaced with null
Notes: If the classes, both GenericClass and InternalClass, are not marked Serializable but instead extend ScriptableObject, the problem remains.
Reproduced on: all versions
Reproduced on: .NET 3.5 and .NET 4.5
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
- RenderPipelineManager.activeRenderPipelineTypeChanged does not detect changes when changing the Render Pipeline Asset outside of Play Mode
- The Scene View becomes gray and "NullReferenceException" errors are thrown when attaching the Unity Editor process to RenderDoc
- Memory usage rapidly rises when changing colors in the color wheel
- Physically Based Sky's Horizon and Zenith Tint Color Selection Bars don't have immediate access to color pickers
- EmptyAdditionalLightShadowmapTexture leaks from memory when URP quality level is changed using QualitySettings.SetQualityLevel
Resolution Note:
This particular case has been investigated thoroughly and we have decided, in the interests of protecting the stability and features of Unity for users that rely upon the affected versions, to not address this fix for the time being. We understand that this will cause problems for some users, and so may address in a future version.