From 2c685bff1493451849580cfb6bf44b88322bf0a4 Mon Sep 17 00:00:00 2001 From: diva Date: Mon, 9 Feb 2009 22:27:27 +0000 Subject: Moved prim crossing out of OGS1 and into RESTComms and LocalInterregionComms. This breaks interregion comms with older versions in what concerns prim crossing. In the process of moving the comms, a few things seem to be working better, namely this may address mantis #3011, mantis #1698. Hopefully, this doesn't break anything else. But I'm still seeing weirdnesses with attchments jumping out of place after a cross/TP. The two most notable changes in the crossing process were: * Object gets passed in only one message, not two as done before. * Local object crossings do not get serialized, as done before. --- .../Communications/Hypergrid/HGGridServicesStandalone.cs | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'OpenSim/Region/Communications/Hypergrid') diff --git a/OpenSim/Region/Communications/Hypergrid/HGGridServicesStandalone.cs b/OpenSim/Region/Communications/Hypergrid/HGGridServicesStandalone.cs index a2453db..0f6b4c7 100644 --- a/OpenSim/Region/Communications/Hypergrid/HGGridServicesStandalone.cs +++ b/OpenSim/Region/Communications/Hypergrid/HGGridServicesStandalone.cs @@ -461,6 +461,16 @@ namespace OpenSim.Region.Communications.Hypergrid regInfo = RequestNeighbourInfo(regionHandle); if (regInfo != null) { + try + { + regionHandle = Convert.ToUInt64(regInfo.regionSecret); + } + catch (Exception) + { + m_log.Warn("[HGrid]: Invalid hyperlink region."); + return false; + } + //don't want to be creating a new link to the remote instance every time like we are here bool retValue = false; @@ -472,6 +482,7 @@ namespace OpenSim.Region.Communications.Hypergrid if (remObject != null) { + m_log.Debug("[HGrid]: Inform region of prim crossing: " + regInfo.RemotingAddress + ":" + regInfo.RemotingPort); retValue = remObject.InformRegionOfPrimCrossing(regionHandle, primID.Guid, objData, XMLMethod); } else @@ -810,6 +821,7 @@ namespace OpenSim.Region.Communications.Hypergrid /// public bool IncomingPrim(ulong regionHandle, UUID primID, string objData, int XMLMethod) { + m_log.Debug("[HGrid]: Incoming Prim"); m_localBackend.TriggerExpectPrim(regionHandle, primID, objData, XMLMethod); return true; -- cgit v1.1