Search Issue Tracker
Fixed in 5.4.2
Votes
3
Found in
5.3.3p1
Issue ID
774970
Regression
Yes
[SyncList] Callback called by SyncList value change still has old value inside Callback function
Steps to reproduce:
1. Open attached project
2. Open scene "test"
3. Run scene and host server
4. In console, notice Debug.Log printed by callback: OnListChanged value: 0
Expected result: Debug.Log: OnListChanged value: 1
Not reproducible: 5.2.4f1
Regression introduced in: 5.3.2p4
Reproduced with: 5.3.3p1, 5.4.0b8
Comments (2)
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
RikuTheFuffs
Sep 08, 2017 16:40
Looks like this bug came back in unity 5.6 and 2017...
Zullar
Jun 09, 2016 21:06
This is not really a bug as much as a design issue. The SyncList callback needs to somehow have access to both oldValue and newValue, but it doesn't... you only have access to the newValue.
I made a post here better explaining why this design issue will make SyncList unusable in some cases.
http://forum.unity3d.com/threads/synclist-behaviour-has-been-changed-in-5-3-2p4.387914/