diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index d1006e353a..c2449a23bc 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs @@ -361,8 +361,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api public LSL_Integer llAbs(int i) { + // changed to replicate LSL behaviour whereby minimum int value is returned untouched. m_host.AddScriptLPS(1); - return (int)Math.Abs(i); + if(i == Int32.MinValue) + return i; + else + return (int)Math.Abs(i); } public LSL_Float llFabs(double f)