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/ScenePresence.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/ScenePresence.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/ScenePresence.cs | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs index 050bf95..67a4b97 100644 --- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs | |||
@@ -545,6 +545,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
545 | 545 | ||
546 | m_scene.SwapRootAgentCount(false); | 546 | m_scene.SwapRootAgentCount(false); |
547 | m_scene.CommsManager.UserProfileCacheService.UpdateUserInventory(m_uuid); | 547 | m_scene.CommsManager.UserProfileCacheService.UpdateUserInventory(m_uuid); |
548 | m_scene.AddCapsHandler(m_uuid); | ||
548 | //if (!m_gotAllObjectsInScene) | 549 | //if (!m_gotAllObjectsInScene) |
549 | //{ | 550 | //{ |
550 | m_scene.SendAllSceneObjectsToClient(this); | 551 | m_scene.SendAllSceneObjectsToClient(this); |
@@ -1616,7 +1617,15 @@ namespace OpenSim.Region.Environment.Scenes | |||
1616 | if (res) | 1617 | if (res) |
1617 | { | 1618 | { |
1618 | AgentCircuitData circuitdata = m_controllingClient.RequestClientInfo(); | 1619 | AgentCircuitData circuitdata = m_controllingClient.RequestClientInfo(); |
1619 | string capsPath = Util.GetCapsURL(m_controllingClient.AgentId); | 1620 | |
1621 | // TODO Should construct this behind a method | ||
1622 | string capsPath = | ||
1623 | "http://" + neighbourRegion.ExternalHostName + ":" + 9000 | ||
1624 | + "/CAPS/" + circuitdata.CapsPath + "0000/"; | ||
1625 | |||
1626 | m_log.DebugFormat( | ||
1627 | "[CONNECTION DEBUGGING]: Sending new CAPS seed url {0} to avatar {1}", capsPath, m_uuid); | ||
1628 | |||
1620 | m_controllingClient.CrossRegion(neighbourHandle, newpos, vel, neighbourRegion.ExternalEndPoint, | 1629 | m_controllingClient.CrossRegion(neighbourHandle, newpos, vel, neighbourRegion.ExternalEndPoint, |
1621 | capsPath); | 1630 | capsPath); |
1622 | MakeChildAgent(); | 1631 | MakeChildAgent(); |