diff options
author | Justin Clarke Casey | 2008-03-20 20:04:45 +0000 |
---|---|---|
committer | Justin Clarke Casey | 2008-03-20 20:04:45 +0000 |
commit | c1beb85315aad09197ca7ffaa8ec194346af82cb (patch) | |
tree | 2554ed107ef378a3fdab9ec23d6760a6962a92a0 /OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs | |
parent | Added back a fix that lbsa71 did aqes ago to fix a buffer overflow in the pac... (diff) | |
download | opensim-SC_OLD-c1beb85315aad09197ca7ffaa8ec194346af82cb.zip opensim-SC_OLD-c1beb85315aad09197ca7ffaa8ec194346af82cb.tar.gz opensim-SC_OLD-c1beb85315aad09197ca7ffaa8ec194346af82cb.tar.bz2 opensim-SC_OLD-c1beb85315aad09197ca7ffaa8ec194346af82cb.tar.xz |
* First draft resolution of mantis 777, 734, 389 - scripts do not save in non-home regions
* Should work in multi-region standalone and grid modes
* This should also solve other non-home region caps issues (map requests, RC client inventory requests, etc)
* We now pass CAPS information on to the destination region on region crossing, and set up a CAPS object when an agent becomes a master
* Current limitation is that this will only work if your http_listener_port is 9000
* This is a very early code cut (lots of bad practice, hard coding and inefficiency). However, I wanted to get this out there for feedback and my own sanity. Next few patches will clean up the mess.
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs b/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs index e51c58d..d9c34e4 100644 --- a/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs +++ b/OpenSim/Region/Environment/Scenes/SceneCommunicationService.cs | |||
@@ -483,7 +483,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
483 | } | 483 | } |
484 | 484 | ||
485 | /// <summary> | 485 | /// <summary> |
486 | /// | 486 | /// Try to teleport an agent to a new region. |
487 | /// </summary> | 487 | /// </summary> |
488 | /// <param name="remoteClient"></param> | 488 | /// <param name="remoteClient"></param> |
489 | /// <param name="RegionHandle"></param> | 489 | /// <param name="RegionHandle"></param> |
@@ -530,7 +530,11 @@ namespace OpenSim.Region.Environment.Scenes | |||
530 | m_commsProvider.InterRegion.ExpectAvatarCrossing(regionHandle, avatar.ControllingClient.AgentId, | 530 | m_commsProvider.InterRegion.ExpectAvatarCrossing(regionHandle, avatar.ControllingClient.AgentId, |
531 | position, false); | 531 | position, false); |
532 | AgentCircuitData circuitdata = avatar.ControllingClient.RequestClientInfo(); | 532 | AgentCircuitData circuitdata = avatar.ControllingClient.RequestClientInfo(); |
533 | string capsPath = Util.GetCapsURL(avatar.ControllingClient.AgentId); | 533 | |
534 | // TODO Should construct this behind a method | ||
535 | string capsPath = | ||
536 | "http://" + reg.ExternalHostName + ":" + 9000 + "/CAPS/" + circuitdata.CapsPath + "0000/"; | ||
537 | |||
534 | avatar.ControllingClient.SendRegionTeleport(regionHandle, 13, reg.ExternalEndPoint, 4, (1 << 4), | 538 | avatar.ControllingClient.SendRegionTeleport(regionHandle, 13, reg.ExternalEndPoint, 4, (1 << 4), |
535 | capsPath); | 539 | capsPath); |
536 | avatar.MakeChildAgent(); | 540 | avatar.MakeChildAgent(); |