aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorDiva Canto2013-06-07 16:01:07 -0700
committerDiva Canto2013-06-07 16:01:07 -0700
commit6aa54a8e168edc40cf85672b2c6edced7db80266 (patch)
tree4ab029b42ecf359794755bcc48bcb950c77b6c5a /OpenSim/Region
parentPut the configuration back in FetchInventoryDesc2 cap. (diff)
parentminor: Comment out debug logging (at warn level) about number of objects forc... (diff)
downloadopensim-SC_OLD-6aa54a8e168edc40cf85672b2c6edced7db80266.zip
opensim-SC_OLD-6aa54a8e168edc40cf85672b2c6edced7db80266.tar.gz
opensim-SC_OLD-6aa54a8e168edc40cf85672b2c6edced7db80266.tar.bz2
opensim-SC_OLD-6aa54a8e168edc40cf85672b2c6edced7db80266.tar.xz
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs2
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs6
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Friends/FriendsRequestHandler.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs7
4 files changed, 11 insertions, 6 deletions
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
index e47397d..9784d15 100644
--- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
+++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs
@@ -4828,7 +4828,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
4828 4828
4829 public void SendForceClientSelectObjects(List<uint> ObjectIDs) 4829 public void SendForceClientSelectObjects(List<uint> ObjectIDs)
4830 { 4830 {
4831 m_log.WarnFormat("[LLCLIENTVIEW] sending select with {0} objects", ObjectIDs.Count); 4831// m_log.DebugFormat("[LLCLIENTVIEW] sending select with {0} objects", ObjectIDs.Count);
4832 4832
4833 bool firstCall = true; 4833 bool firstCall = true;
4834 const int MAX_OBJECTS_PER_PACKET = 251; 4834 const int MAX_OBJECTS_PER_PACKET = 251;
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
index 4613344..41ea2a2 100644
--- a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
@@ -685,7 +685,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
685 // 685 //
686 686
687 // Try local 687 // Try local
688 if (LocalFriendshipTerminated(exfriendID)) 688 if (LocalFriendshipTerminated(client.AgentId, exfriendID))
689 return; 689 return;
690 690
691 PresenceInfo[] friendSessions = PresenceService.GetAgents(new string[] { exfriendID.ToString() }); 691 PresenceInfo[] friendSessions = PresenceService.GetAgents(new string[] { exfriendID.ToString() });
@@ -827,13 +827,13 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
827 return false; 827 return false;
828 } 828 }
829 829
830 public bool LocalFriendshipTerminated(UUID exfriendID) 830 public bool LocalFriendshipTerminated(UUID userID, UUID exfriendID)
831 { 831 {
832 IClientAPI friendClient = LocateClientObject(exfriendID); 832 IClientAPI friendClient = LocateClientObject(exfriendID);
833 if (friendClient != null) 833 if (friendClient != null)
834 { 834 {
835 // the friend in this sim as root agent 835 // the friend in this sim as root agent
836 friendClient.SendTerminateFriend(exfriendID); 836 friendClient.SendTerminateFriend(userID);
837 // update local cache 837 // update local cache
838 RecacheFriends(friendClient); 838 RecacheFriends(friendClient);
839 // we're done 839 // we're done
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsRequestHandler.cs b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsRequestHandler.cs
index 637beef..08196f1 100644
--- a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsRequestHandler.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsRequestHandler.cs
@@ -193,7 +193,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
193 if (!UUID.TryParse(request["ToID"].ToString(), out toID)) 193 if (!UUID.TryParse(request["ToID"].ToString(), out toID))
194 return FailureResult(); 194 return FailureResult();
195 195
196 if (m_FriendsModule.LocalFriendshipTerminated(toID)) 196 if (m_FriendsModule.LocalFriendshipTerminated(fromID, toID))
197 return SuccessResult(); 197 return SuccessResult();
198 198
199 return FailureResult(); 199 return FailureResult();
diff --git a/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs b/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
index 8c84c98..8238e23 100644
--- a/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneCommunicationService.cs
@@ -222,7 +222,12 @@ namespace OpenSim.Region.Framework.Scenes
222 public void SendCloseChildAgentConnections(UUID agentID, List<ulong> regionslst) 222 public void SendCloseChildAgentConnections(UUID agentID, List<ulong> regionslst)
223 { 223 {
224 foreach (ulong handle in regionslst) 224 foreach (ulong handle in regionslst)
225 Util.FireAndForget(delegate { SendCloseChildAgent(agentID, handle); }); 225 {
226 // We must take a copy here since handle is acts like a reference when used in an iterator.
227 // This leads to race conditions if directly passed to SendCloseChildAgent with more than one neighbour region.
228 ulong handleCopy = handle;
229 Util.FireAndForget((o) => { SendCloseChildAgent(agentID, handleCopy); });
230 }
226 } 231 }
227 232
228 public List<GridRegion> RequestNamedRegions(string name, int maxNumber) 233 public List<GridRegion> RequestNamedRegions(string name, int maxNumber)