aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules
diff options
context:
space:
mode:
authorJustin Clark-Casey (justincc)2011-11-15 20:26:42 +0000
committerJustin Clark-Casey (justincc)2011-11-15 20:26:42 +0000
commit828e4a5b093c6a67302776137fc0bdbcfded4c9b (patch)
tree2e23acc14ca786cb9f5484004222e03829bdfc60 /OpenSim/Region/CoreModules
parentInstead of having scene add/remove collision events directly to the OdeScene ... (diff)
downloadopensim-SC_OLD-828e4a5b093c6a67302776137fc0bdbcfded4c9b.zip
opensim-SC_OLD-828e4a5b093c6a67302776137fc0bdbcfded4c9b.tar.gz
opensim-SC_OLD-828e4a5b093c6a67302776137fc0bdbcfded4c9b.tar.bz2
opensim-SC_OLD-828e4a5b093c6a67302776137fc0bdbcfded4c9b.tar.xz
Add comments about trying to avoid synchronous work off the EventManager.OnMakeRootAgent event since this is on the critical path for transfer of avatars from one region to another.
Diffstat (limited to 'OpenSim/Region/CoreModules')
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs5
1 files changed, 4 insertions, 1 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
index 21640cf..c266fe5 100644
--- a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
@@ -29,6 +29,7 @@ using System;
29using System.Collections; 29using System.Collections;
30using System.Collections.Generic; 30using System.Collections.Generic;
31using System.Reflection; 31using System.Reflection;
32using System.Threading;
32using log4net; 33using log4net;
33using Nini.Config; 34using Nini.Config;
34using Nwc.XmlRpc; 35using Nwc.XmlRpc;
@@ -856,7 +857,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
856 IClientAPI friendClient = LocateClientObject(friendID); 857 IClientAPI friendClient = LocateClientObject(friendID);
857 if (friendClient != null) 858 if (friendClient != null)
858 { 859 {
859 // the friend in this sim as root agent 860 // the friend in this sim as root agent
860 if (online) 861 if (online)
861 friendClient.SendAgentOnline(new UUID[] { userID }); 862 friendClient.SendAgentOnline(new UUID[] { userID });
862 else 863 else
@@ -913,6 +914,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
913 914
914 private void RecacheFriends(IClientAPI client) 915 private void RecacheFriends(IClientAPI client)
915 { 916 {
917 // FIXME: Ideally, we want to avoid doing this here since it sits the EventManager.OnMakeRootAgent event
918 // is on the critical path for transferring an avatar from one region to another.
916 UUID agentID = client.AgentId; 919 UUID agentID = client.AgentId;
917 lock (m_Friends) 920 lock (m_Friends)
918 { 921 {