aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorDr Scofield2008-10-30 15:09:43 +0000
committerDr Scofield2008-10-30 15:09:43 +0000
commit537cd4708f31196cb71b63fbb3d5d18d6a4c126b (patch)
treeb3c10f54798cd20b994081be94aa3728460e46a7
parentThank you kindly, NLin for an implementation patch (diff)
downloadopensim-SC_OLD-537cd4708f31196cb71b63fbb3d5d18d6a4c126b.zip
opensim-SC_OLD-537cd4708f31196cb71b63fbb3d5d18d6a4c126b.tar.gz
opensim-SC_OLD-537cd4708f31196cb71b63fbb3d5d18d6a4c126b.tar.bz2
opensim-SC_OLD-537cd4708f31196cb71b63fbb3d5d18d6a4c126b.tar.xz
From: Chris Yeoh (yeohc@au1.ibm.com)
Here's the patch that clamps llGround to using sane values avoiding runtime errors.
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs12
1 files changed, 12 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 6fd2544..499273c 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -937,6 +937,18 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
937 Vector3 pos = m_host.GetWorldPosition(); 937 Vector3 pos = m_host.GetWorldPosition();
938 int x = (int)(pos.X + offset.x); 938 int x = (int)(pos.X + offset.x);
939 int y = (int)(pos.Y + offset.y); 939 int y = (int)(pos.Y + offset.y);
940
941 // Clamp to valid position
942 if (x<0)
943 x = 0;
944 else if (x>=World.Heightmap.Width)
945 x = World.Heightmap.Width-1;
946 if (y<0)
947 y = 0;
948 else if (y>=World.Heightmap.Height)
949 y = World.Heightmap.Height-1;
950
951
940 return World.GetLandHeight(x, y); 952 return World.GetLandHeight(x, y);
941 } 953 }
942 954