aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
authorMelanie Thielker2008-09-07 20:09:11 +0000
committerMelanie Thielker2008-09-07 20:09:11 +0000
commit58d79b33ff507a1d861d1196a925d2d09ad1c3f2 (patch)
tree0b4c898b5885bb2c6d16346744f06f8c4b17fe77 /OpenSim/Region
parentReturn 0 for no wind and 0 for no clouds from (diff)
downloadopensim-SC-58d79b33ff507a1d861d1196a925d2d09ad1c3f2.zip
opensim-SC-58d79b33ff507a1d861d1196a925d2d09ad1c3f2.tar.gz
opensim-SC-58d79b33ff507a1d861d1196a925d2d09ad1c3f2.tar.bz2
opensim-SC-58d79b33ff507a1d861d1196a925d2d09ad1c3f2.tar.xz
Mantis #2142
Thank you, HomerHorwitz, for a patch that fixes landmark teleport and about landmarks with the new OMV types.
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/Communications/OGS1/OGS1GridServices.cs63
-rw-r--r--OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs2
2 files changed, 34 insertions, 31 deletions
diff --git a/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs b/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs
index aaeca4b..2538eaf 100644
--- a/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs
+++ b/OpenSim/Region/Communications/OGS1/OGS1GridServices.cs
@@ -1674,42 +1674,45 @@ namespace OpenSim.Region.Communications.OGS1
1674 IList paramList = new ArrayList(); 1674 IList paramList = new ArrayList();
1675 paramList.Add(hash); 1675 paramList.Add(hash);
1676 1676
1677 // this might be cached, as we probably requested it just a moment ago...
1678 RegionInfo info = RequestNeighbourInfo(regionHandle);
1679
1680 try 1677 try
1681 { 1678 {
1682 XmlRpcRequest request = new XmlRpcRequest("land_data", paramList); 1679 // this might be cached, as we probably requested it just a moment ago...
1683 string uri = "http://" + info.ExternalEndPoint.Address + ":" + info.HttpPort + "/"; 1680 RegionInfo info = RequestNeighbourInfo(regionHandle);
1684 XmlRpcResponse response = request.Send(uri, 10000); 1681 if (info != null) // just to be sure
1685 if (response.IsFault) 1682 {
1686 { 1683 XmlRpcRequest request = new XmlRpcRequest("land_data", paramList);
1687 m_log.ErrorFormat("[OGS1 GRID SERVICES] remote call returned an error: {0}", response.FaultString); 1684 string uri = "http://" + info.ExternalEndPoint.Address + ":" + info.HttpPort + "/";
1688 } 1685 XmlRpcResponse response = request.Send(uri, 10000);
1689 else 1686 if (response.IsFault)
1690 { 1687 {
1691 hash = (Hashtable)response.Value; 1688 m_log.ErrorFormat("[OGS1 GRID SERVICES] remote call returned an error: {0}", response.FaultString);
1692 try {
1693 landData = new LandData();
1694 landData.AABBMax = Vector3.Parse((string)hash["AABBMax"]);
1695 landData.AABBMin = Vector3.Parse((string)hash["AABBMin"]);
1696 landData.Area = Convert.ToInt32(hash["Area"]);
1697 landData.AuctionID = Convert.ToUInt32(hash["AuctionID"]);
1698 landData.Description = (string)hash["Description"];
1699 landData.Flags = Convert.ToUInt32(hash["Flags"]);
1700 landData.GlobalID = new UUID((string)hash["GlobalID"]);
1701 landData.Name = (string)hash["Name"];
1702 landData.OwnerID = new UUID((string)hash["OwnerID"]);
1703 landData.SalePrice = Convert.ToInt32(hash["SalePrice"]);
1704 landData.SnapshotID = new UUID((string)hash["SnapshotID"]);
1705 landData.UserLocation = Vector3.Parse((string)hash["UserLocation"]);
1706 m_log.DebugFormat("[OGS1 GRID SERVICES] Got land data for parcel {0}", landData.Name);
1707 } 1689 }
1708 catch (Exception e) 1690 else
1709 { 1691 {
1710 m_log.Error("[OGS1 GRID SERVICES] Got exception while parsing land-data:", e); 1692 hash = (Hashtable)response.Value;
1693 try {
1694 landData = new LandData();
1695 landData.AABBMax = Vector3.Parse((string)hash["AABBMax"]);
1696 landData.AABBMin = Vector3.Parse((string)hash["AABBMin"]);
1697 landData.Area = Convert.ToInt32(hash["Area"]);
1698 landData.AuctionID = Convert.ToUInt32(hash["AuctionID"]);
1699 landData.Description = (string)hash["Description"];
1700 landData.Flags = Convert.ToUInt32(hash["Flags"]);
1701 landData.GlobalID = new UUID((string)hash["GlobalID"]);
1702 landData.Name = (string)hash["Name"];
1703 landData.OwnerID = new UUID((string)hash["OwnerID"]);
1704 landData.SalePrice = Convert.ToInt32(hash["SalePrice"]);
1705 landData.SnapshotID = new UUID((string)hash["SnapshotID"]);
1706 landData.UserLocation = Vector3.Parse((string)hash["UserLocation"]);
1707 m_log.DebugFormat("[OGS1 GRID SERVICES] Got land data for parcel {0}", landData.Name);
1708 }
1709 catch (Exception e)
1710 {
1711 m_log.Error("[OGS1 GRID SERVICES] Got exception while parsing land-data:", e);
1712 }
1711 } 1713 }
1712 } 1714 }
1715 else m_log.WarnFormat("[OGS1 GRID SERVICES] Couldn't find region with handle {0}", regionHandle);
1713 } 1716 }
1714 catch (Exception e) 1717 catch (Exception e)
1715 { 1718 {
diff --git a/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs b/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
index e5bdafc..f4ba9a3 100644
--- a/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
+++ b/OpenSim/Region/Environment/Modules/World/Land/LandManagementModule.cs
@@ -1111,7 +1111,7 @@ namespace OpenSim.Region.Environment.Modules.World.Land
1111 { 1111 {
1112 // if you do a "About Landmark" on a landmark a second time, the viewer sends the 1112 // if you do a "About Landmark" on a landmark a second time, the viewer sends the
1113 // region_handle it got earlier via RegionHandleRequest 1113 // region_handle it got earlier via RegionHandleRequest
1114 ulong regionHandle = Helpers.BytesToUInt64((byte[])hash["region_handle"]); 1114 ulong regionHandle = Util.BytesToUInt64Big((byte[])hash["region_handle"]);
1115 parcelID = Util.BuildFakeParcelID(regionHandle, x, y); 1115 parcelID = Util.BuildFakeParcelID(regionHandle, x, y);
1116 } 1116 }
1117 else if (regionID == m_scene.RegionInfo.RegionID) 1117 else if (regionID == m_scene.RegionInfo.RegionID)