Search Issue Tracker
Fixed in 2020.2.X
Fixed in 2019.4.X, 2020.1.X
Votes
1
Found in
2019.3
2020.1.0b9
2020.2
Issue ID
1249099
Regression
No
Undoing does not restore array values when using SerializedProperty with managedReferenceValue set to null
How to reproduce:
1. Open the attached project (SerializeReferenceUndoBug.zip)
2. In the Hierarchy window select the BugExample GameObject
3. In the Inspector window under the 'Behavior Example' Component press the button 'Null'
4. Undo the last action (CTRL + Z or Edit -> Undo Inspector)
Expected result: variables 'Value' and 'Integers' get set to their previous values ('Value' = 1, 'Integers' = {1,2,3})
Actual result: variable 'Value' gets set to its previous value while 'Integers' do not
Reproducible with: 2019.3.15f1, 2020.1.0b10, 2020.2.0a12
Could not test with: 2018.4.23f1 (SerializeReference not introduced)
Notes:
1. The 'Create' button sets the SerializedProperty managedReferenceValue to the ExampleClass (which has the 'Value' and 'Integers' variables). Undoing this works as expected - the values get properly reset
2. The 'Null' button sets the SerializedProperty managedReferenceValue to null
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
- Texture2D hash changes inside of an AssetBundle when rebuilding a SpriteAtlas bundle with an empty AssetPostprocessor Script enabled
- Aniso Level still applies when Generate MipMap is disabled in Texture Import Settings
- Mipmap Limit Groups long names are not truncated when creating a new Mipmap Limit Group with a long name
- “ArgumentException: Invalid double parameter.” error is thrown when Infinity is typed into the Fixed Timestep field
- GameObject becomes gray when using HDRP and STP together on macOS
Resolution Note (fix version 2020.2):
Fixed in 2020.2.0a19
Resolution Note (fix version 2020.1):
Fixed in 2020.1.4f1
Resolution Note (fix version 2019.4):
Fixed in 2019.4.9f1