aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Services/Friends/FriendsService.cs
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2010-09-20 18:35:19 +0100
committerJustin Clark-Casey (justincc)2010-09-21 00:58:54 +0100
commita85779e477b01ce80fa5e25e28e4e129c1bb137c (patch)
tree0e9f07c6ce552bf968cc8d60994000038ddf8947 /OpenSim/Services/Friends/FriendsService.cs
parentFixed a regression in SOG.Copy() (diff)
downloadopensim-SC-a85779e477b01ce80fa5e25e28e4e129c1bb137c.zip
opensim-SC-a85779e477b01ce80fa5e25e28e4e129c1bb137c.tar.gz
opensim-SC-a85779e477b01ce80fa5e25e28e4e129c1bb137c.tar.bz2
opensim-SC-a85779e477b01ce80fa5e25e28e4e129c1bb137c.tar.xz
If the uuid of a SceneObjectGroup (RootPart) is changed before adding to the scene, remove the old uuid reference from m_parts as well as adding the new one.
The separate remove and set operations is SOG.set_UUID() are both locked under m_parts.SyncRoot since they are logically atomic (though this isn't such an issue if the SOG isn't part of a scene) Added unit test for this behaviour. Also changed the second m_parts.AddOrReplace() to m_parts.Add(). As the old reference is now removed we never end up replacing an identical uuid. And if we replace a uuid that's already there (from a child part) then this is an error.
Diffstat (limited to 'OpenSim/Services/Friends/FriendsService.cs')
0 files changed, 0 insertions, 0 deletions