From 217d511077cba75e48957bcbb0a0da8344fa8f4c Mon Sep 17 00:00:00 2001 From: MW Date: Wed, 15 Aug 2007 15:24:37 +0000 Subject: Temporary fix for the region crossing crash, Although we need to start to change and improve how we handle caps. --- OpenSim/Region/Environment/Scenes/Scene.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'OpenSim/Region/Environment/Scenes/Scene.cs') diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 0fa3ab7..3ee1f19 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs @@ -36,6 +36,7 @@ using OpenSim.Framework.Console; using OpenSim.Framework.Interfaces; using OpenSim.Framework.Servers; using OpenSim.Framework.Types; +using OpenSim.Framework.Utilities; using OpenSim.Physics.Manager; using OpenSim.Framework.Communications.Caches; using OpenSim.Region.Environment.LandManagement; @@ -836,6 +837,7 @@ namespace OpenSim.Region.Environment.Scenes Caps cap = new Caps(assetCache, httpListener, m_regInfo.ExternalHostName, m_regInfo.ExternalEndPoint.Port, agent.CapsPath, agent.AgentID); + Util.SetCapsURL(agent.AgentID, "http://" + m_regInfo.ExternalHostName + ":" + httpListener.Port.ToString() + "/CAPS/" + agent.CapsPath + "0000/"); cap.RegisterHandlers(); cap.AddNewInventoryItem = this.AddInventoryItem; cap.ItemUpdatedCall = this.UpdateInventoryItemAsset; @@ -948,7 +950,7 @@ namespace OpenSim.Region.Environment.Scenes //TODO: following line is hard coded to port 9000, really need to change this as soon as possible AgentCircuitData circuitdata = remoteClient.RequestClientInfo(); - string capsPath = "http://" + reg.ExternalEndPoint.Address.ToString() + ":9000/CAPS/" + this.AuthenticateHandler.AgentCircuits[circuitdata.circuitcode].CapsPath + "0000/"; + string capsPath = Util.GetCapsURL(remoteClient.AgentId); remoteClient.SendRegionTeleport(regionHandle, 13, reg.ExternalEndPoint, 4, (1 << 4), capsPath); } } @@ -1111,7 +1113,7 @@ namespace OpenSim.Region.Environment.Scenes item.assetID = asset.FullID; userInfo.updateItem(remoteClient.AgentId, item); - remoteClient.SendInventoryItemUpdate(item); + // remoteClient.SendInventoryItemUpdate(item); return (asset.FullID); } -- cgit v1.1