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
- “Remove Unused Overrides” available on not loaded Scene and throws “ArgumentException: The scene is not loaded” warning
- Adaptive Probe Volume occlusion edge is calculated incorrectly when viewing probes near geometry edges
- Sampling a texture using an HLSL file throws shader errors and the code does not compile
- "Graphics.CopyTexture called with null source texture" error when Base Camera of an Overlay Camera is removed with DX11 Graphics API and Compatibility Mode enabled
- WebGL sends wrong value with large numbers when SendMessage function is used
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.