diff options
author | Melanie Thielker | 2014-09-23 21:53:09 +0200 |
---|---|---|
committer | Melanie Thielker | 2014-09-23 21:53:09 +0200 |
commit | 309cfeff88e9b348c9170ecd1818df68a1835681 (patch) | |
tree | b2aef9d2b85cdf905821839d11a28228edbe1bdf /OpenSim/Region/Framework/Scenes | |
parent | Merge branch 'ubitworkmaster' (diff) | |
download | opensim-SC-309cfeff88e9b348c9170ecd1818df68a1835681.zip opensim-SC-309cfeff88e9b348c9170ecd1818df68a1835681.tar.gz opensim-SC-309cfeff88e9b348c9170ecd1818df68a1835681.tar.bz2 opensim-SC-309cfeff88e9b348c9170ecd1818df68a1835681.tar.xz |
If an agent is logging in, rather than teleporting, make sure all known
circuits for that agent are closed.
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/Scene.cs | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs index 087df70..8cb795d 100644 --- a/OpenSim/Region/Framework/Scenes/Scene.cs +++ b/OpenSim/Region/Framework/Scenes/Scene.cs | |||
@@ -3988,6 +3988,12 @@ namespace OpenSim.Region.Framework.Scenes | |||
3988 | // We need the circuit data here for some of the subsequent checks. (groups, for example) | 3988 | // We need the circuit data here for some of the subsequent checks. (groups, for example) |
3989 | // If the checks fail, we remove the circuit. | 3989 | // If the checks fail, we remove the circuit. |
3990 | acd.teleportFlags = teleportFlags; | 3990 | acd.teleportFlags = teleportFlags; |
3991 | |||
3992 | // Remove any preexisting circuit - we don't want duplicates | ||
3993 | // This is a stab at preventing avatar "ghosting" | ||
3994 | if (vialogin) | ||
3995 | m_authenticateHandler.RemoveCircuit(acd.AgentID); | ||
3996 | |||
3991 | m_authenticateHandler.AddNewCircuit(acd.circuitcode, acd); | 3997 | m_authenticateHandler.AddNewCircuit(acd.circuitcode, acd); |
3992 | 3998 | ||
3993 | land = LandChannel.GetLandObject(acd.startpos.X, acd.startpos.Y); | 3999 | land = LandChannel.GetLandObject(acd.startpos.X, acd.startpos.Y); |