aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2012-03-29 01:26:30 +0100
committerJustin Clark-Casey (justincc)2012-03-29 01:26:30 +0100
commit22a85b947a16074525343a56203211806ce16834 (patch)
tree0ce05c1edf757ed7d0d611bbdefe79816b6d65dc /OpenSim/Region/CoreModules
parentChange namespace on CallingCardModule and correct interface file placemant. A... (diff)
downloadopensim-SC-22a85b947a16074525343a56203211806ce16834.zip
opensim-SC-22a85b947a16074525343a56203211806ce16834.tar.gz
opensim-SC-22a85b947a16074525343a56203211806ce16834.tar.bz2
opensim-SC-22a85b947a16074525343a56203211806ce16834.tar.xz
Add back parts of reverted changes that were not concerned with child agent caching.
This adds ScenePresence to IClientAPI.SceneAgent earlier on in the add client process so that its information is available to EventManager.OnNewClient() and OnClientLogin() Also add a code comment as to why we're caching friend information for child agents.
Diffstat (limited to 'OpenSim/Region/CoreModules')
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs3
1 files changed, 3 insertions, 0 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
index aadd3bc..0c83679 100644
--- a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
@@ -261,6 +261,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
261 client.OnTerminateFriendship += (thisClient, agentID, exfriendID) => RemoveFriendship(thisClient, exfriendID); 261 client.OnTerminateFriendship += (thisClient, agentID, exfriendID) => RemoveFriendship(thisClient, exfriendID);
262 client.OnGrantUserRights += OnGrantUserRights; 262 client.OnGrantUserRights += OnGrantUserRights;
263 263
264 // We need to cache information for child agents as well as root agents so that friend edit/move/delete
265 // permissions will work across borders where both regions are on different simulators.
266 //
264 // Do not do this asynchronously. If we do, then subsequent code can outrace CacheFriends() and 267 // Do not do this asynchronously. If we do, then subsequent code can outrace CacheFriends() and
265 // return misleading results from the still empty friends cache. 268 // return misleading results from the still empty friends cache.
266 // If we absolutely need to do this asynchronously, then a signalling mechanism is needed so that calls 269 // If we absolutely need to do this asynchronously, then a signalling mechanism is needed so that calls