mirror of
https://github.com/opensim/opensim.git
synced 2026-08-11 11:57:03 +08:00
do not waste time sending a message back to client on DeactivateClientDueToTimeout..., that most likely will fail
This commit is contained in:
@@ -1028,7 +1028,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
|||||||
|
|
||||||
// Fire this out on a different thread so that we don't hold up outgoing packet processing for
|
// Fire this out on a different thread so that we don't hold up outgoing packet processing for
|
||||||
// everybody else if this is being called due to an ack timeout.
|
// everybody else if this is being called due to an ack timeout.
|
||||||
// This is the same as processing as the async process of a logout request.
|
|
||||||
Util.FireAndForget(
|
Util.FireAndForget(
|
||||||
o => DeactivateClientDueToTimeout(client, timeoutTicks), null, "LLUDPServer.DeactivateClientDueToTimeout");
|
o => DeactivateClientDueToTimeout(client, timeoutTicks), null, "LLUDPServer.DeactivateClientDueToTimeout");
|
||||||
|
|
||||||
@@ -1747,19 +1746,12 @@ namespace OpenSim.Region.ClientStack.LindenUDP
|
|||||||
/// <param name='timeoutTicks'></param>
|
/// <param name='timeoutTicks'></param>
|
||||||
protected void DeactivateClientDueToTimeout(LLClientView client, int timeoutTicks)
|
protected void DeactivateClientDueToTimeout(LLClientView client, int timeoutTicks)
|
||||||
{
|
{
|
||||||
lock (client.CloseSyncLock)
|
ClientLogoutsDueToNoReceives++;
|
||||||
|
if (client.SceneAgent != null)
|
||||||
{
|
{
|
||||||
ClientLogoutsDueToNoReceives++;
|
m_log.WarnFormat(
|
||||||
|
"[LLUDPSERVER]: No packets received from {0} agent of {1} for {2}ms in {3}. Disconnecting.",
|
||||||
if (client.SceneAgent != null)
|
client.SceneAgent.IsChildAgent ? "child" : "root", client.Name, timeoutTicks, Scene.Name);
|
||||||
{
|
|
||||||
m_log.WarnFormat(
|
|
||||||
"[LLUDPSERVER]: No packets received from {0} agent of {1} for {2}ms in {3}. Disconnecting.",
|
|
||||||
client.SceneAgent.IsChildAgent ? "child" : "root", client.Name, timeoutTicks, Scene.Name);
|
|
||||||
|
|
||||||
if (!client.SceneAgent.IsChildAgent)
|
|
||||||
client.Kick("Simulator logged you out due to connection timeout.");
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!Scene.CloseAgent(client.AgentId, true))
|
if (!Scene.CloseAgent(client.AgentId, true))
|
||||||
|
|||||||
Reference in New Issue
Block a user