aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorMelanie Thielker2010-08-24 18:52:00 +0200
committerMelanie Thielker2010-08-24 18:52:00 +0200
commit512a13dbe7a8dfa36a662f64caf573f467173b95 (patch)
tree8b45c966f8797d623025c239f2c6887bdc3605aa /OpenSim
parentCall attachment cleanup when an agent crosses out (diff)
downloadopensim-SC_OLD-512a13dbe7a8dfa36a662f64caf573f467173b95.zip
opensim-SC_OLD-512a13dbe7a8dfa36a662f64caf573f467173b95.tar.gz
opensim-SC_OLD-512a13dbe7a8dfa36a662f64caf573f467173b95.tar.bz2
opensim-SC_OLD-512a13dbe7a8dfa36a662f64caf573f467173b95.tar.xz
Call the Cleanup when an agent logs out, when an agent leaves and just
before an agent logs in directly. Intentionally not calling this from MakeRoot as that would mess up attachment transfer in teleport
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs3
1 files changed, 3 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index d0619d7..6452dfe 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -3199,6 +3199,7 @@ namespace OpenSim.Region.Framework.Scenes
3199 m_log.Debug("[Scene] Beginning ClientClosed"); 3199 m_log.Debug("[Scene] Beginning ClientClosed");
3200 m_eventManager.TriggerClientClosed(agentID, this); 3200 m_eventManager.TriggerClientClosed(agentID, this);
3201 m_log.Debug("[Scene] Finished ClientClosed"); 3201 m_log.Debug("[Scene] Finished ClientClosed");
3202 CleanDroppedAttachments();
3202 } 3203 }
3203 catch (NullReferenceException) 3204 catch (NullReferenceException)
3204 { 3205 {
@@ -3442,6 +3443,8 @@ namespace OpenSim.Region.Framework.Scenes
3442 3443
3443 if (vialogin) 3444 if (vialogin)
3444 { 3445 {
3446 CleanDroppedAttachments();
3447
3445 if (TestBorderCross(agent.startpos, Cardinals.E)) 3448 if (TestBorderCross(agent.startpos, Cardinals.E))
3446 { 3449 {
3447 Border crossedBorder = GetCrossedBorder(agent.startpos, Cardinals.E); 3450 Border crossedBorder = GetCrossedBorder(agent.startpos, Cardinals.E);