Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
commit
6aa54a8e16
|
@ -75,11 +75,12 @@ what it is today.
|
||||||
* controlbreak
|
* controlbreak
|
||||||
* coyled
|
* coyled
|
||||||
* Daedius
|
* Daedius
|
||||||
* Dong Jun Lan (IBM)
|
|
||||||
* DoranZemlja
|
|
||||||
* daTwitch
|
* daTwitch
|
||||||
* devalnor-#708
|
* devalnor-#708
|
||||||
* dmiles (Daxtron Labs)
|
* dmiles (Daxtron Labs)
|
||||||
|
* Dong Jun Lan (IBM)
|
||||||
|
* DoranZemlja
|
||||||
|
* dr0b3rts
|
||||||
* dslake (Intel)
|
* dslake (Intel)
|
||||||
* FredoChaplin
|
* FredoChaplin
|
||||||
* Garmin Kawaguichi
|
* Garmin Kawaguichi
|
||||||
|
|
|
@ -4828,7 +4828,7 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
||||||
|
|
||||||
public void SendForceClientSelectObjects(List<uint> ObjectIDs)
|
public void SendForceClientSelectObjects(List<uint> ObjectIDs)
|
||||||
{
|
{
|
||||||
m_log.WarnFormat("[LLCLIENTVIEW] sending select with {0} objects", ObjectIDs.Count);
|
// m_log.DebugFormat("[LLCLIENTVIEW] sending select with {0} objects", ObjectIDs.Count);
|
||||||
|
|
||||||
bool firstCall = true;
|
bool firstCall = true;
|
||||||
const int MAX_OBJECTS_PER_PACKET = 251;
|
const int MAX_OBJECTS_PER_PACKET = 251;
|
||||||
|
|
|
@ -685,7 +685,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
|
||||||
//
|
//
|
||||||
|
|
||||||
// Try local
|
// Try local
|
||||||
if (LocalFriendshipTerminated(exfriendID))
|
if (LocalFriendshipTerminated(client.AgentId, exfriendID))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
PresenceInfo[] friendSessions = PresenceService.GetAgents(new string[] { exfriendID.ToString() });
|
PresenceInfo[] friendSessions = PresenceService.GetAgents(new string[] { exfriendID.ToString() });
|
||||||
|
@ -827,13 +827,13 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public bool LocalFriendshipTerminated(UUID exfriendID)
|
public bool LocalFriendshipTerminated(UUID userID, UUID exfriendID)
|
||||||
{
|
{
|
||||||
IClientAPI friendClient = LocateClientObject(exfriendID);
|
IClientAPI friendClient = LocateClientObject(exfriendID);
|
||||||
if (friendClient != null)
|
if (friendClient != null)
|
||||||
{
|
{
|
||||||
// the friend in this sim as root agent
|
// the friend in this sim as root agent
|
||||||
friendClient.SendTerminateFriend(exfriendID);
|
friendClient.SendTerminateFriend(userID);
|
||||||
// update local cache
|
// update local cache
|
||||||
RecacheFriends(friendClient);
|
RecacheFriends(friendClient);
|
||||||
// we're done
|
// we're done
|
||||||
|
|
|
@ -193,7 +193,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
|
||||||
if (!UUID.TryParse(request["ToID"].ToString(), out toID))
|
if (!UUID.TryParse(request["ToID"].ToString(), out toID))
|
||||||
return FailureResult();
|
return FailureResult();
|
||||||
|
|
||||||
if (m_FriendsModule.LocalFriendshipTerminated(toID))
|
if (m_FriendsModule.LocalFriendshipTerminated(fromID, toID))
|
||||||
return SuccessResult();
|
return SuccessResult();
|
||||||
|
|
||||||
return FailureResult();
|
return FailureResult();
|
||||||
|
|
|
@ -222,7 +222,12 @@ namespace OpenSim.Region.Framework.Scenes
|
||||||
public void SendCloseChildAgentConnections(UUID agentID, List<ulong> regionslst)
|
public void SendCloseChildAgentConnections(UUID agentID, List<ulong> regionslst)
|
||||||
{
|
{
|
||||||
foreach (ulong handle in regionslst)
|
foreach (ulong handle in regionslst)
|
||||||
Util.FireAndForget(delegate { SendCloseChildAgent(agentID, handle); });
|
{
|
||||||
|
// We must take a copy here since handle is acts like a reference when used in an iterator.
|
||||||
|
// This leads to race conditions if directly passed to SendCloseChildAgent with more than one neighbour region.
|
||||||
|
ulong handleCopy = handle;
|
||||||
|
Util.FireAndForget((o) => { SendCloseChildAgent(agentID, handleCopy); });
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<GridRegion> RequestNamedRegions(string name, int maxNumber)
|
public List<GridRegion> RequestNamedRegions(string name, int maxNumber)
|
||||||
|
|
Loading…
Reference in New Issue