diff options
author | Justin Clark-Casey (justincc) | 2010-08-06 22:45:37 +0100 |
---|---|---|
committer | Justin Clark-Casey (justincc) | 2010-08-06 22:45:37 +0100 |
commit | 204c05974ffceb55b0786eab31aadb231b4dad61 (patch) | |
tree | 5cbb8926393d92320c4935c1cb075e12adf976f9 /OpenSim | |
parent | Add System.Core references to OpenSim.Region.CoreModules.* to fix windows build (diff) | |
parent | These files want to be committed -- white space weirdness. (diff) | |
download | opensim-SC_OLD-204c05974ffceb55b0786eab31aadb231b4dad61.zip opensim-SC_OLD-204c05974ffceb55b0786eab31aadb231b4dad61.tar.gz opensim-SC_OLD-204c05974ffceb55b0786eab31aadb231b4dad61.tar.bz2 opensim-SC_OLD-204c05974ffceb55b0786eab31aadb231b4dad61.tar.xz |
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
Diffstat (limited to 'OpenSim')
-rw-r--r-- | OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs | 7 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 22 |
2 files changed, 21 insertions, 8 deletions
diff --git a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs index ffa30d5..016ab73 100644 --- a/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs +++ b/OpenSim/Framework/Servers/HttpServer/BaseHttpServer.cs | |||
@@ -319,6 +319,13 @@ namespace OpenSim.Framework.Servers.HttpServer | |||
319 | OSHttpRequest req = new OSHttpRequest(context, request); | 319 | OSHttpRequest req = new OSHttpRequest(context, request); |
320 | OSHttpResponse resp = new OSHttpResponse(new HttpResponse(context, request),context); | 320 | OSHttpResponse resp = new OSHttpResponse(new HttpResponse(context, request),context); |
321 | HandleRequest(req, resp); | 321 | HandleRequest(req, resp); |
322 | |||
323 | // !!!HACK ALERT!!! | ||
324 | // There seems to be a bug in the underlying http code that makes subsequent requests | ||
325 | // come up with trash in Accept headers. Until that gets fixed, we're cleaning them up here. | ||
326 | if (request.AcceptTypes != null) | ||
327 | for (int i = 0; i < request.AcceptTypes.Length; i++) | ||
328 | request.AcceptTypes[i] = string.Empty; | ||
322 | } | 329 | } |
323 | 330 | ||
324 | // public void ConvertIHttpClientContextToOSHttp(object stateinfo) | 331 | // public void ConvertIHttpClientContextToOSHttp(object stateinfo) |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 139b4f1..32e46ec 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -1929,7 +1929,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1929 | protected void SetPos(SceneObjectPart part, LSL_Vector targetPos) | 1929 | protected void SetPos(SceneObjectPart part, LSL_Vector targetPos) |
1930 | { | 1930 | { |
1931 | // Capped movemment if distance > 10m (http://wiki.secondlife.com/wiki/LlSetPos) | 1931 | // Capped movemment if distance > 10m (http://wiki.secondlife.com/wiki/LlSetPos) |
1932 | LSL_Vector currentPos = llGetLocalPos(); | 1932 | LSL_Vector currentPos = GetPartLocalPos(part); |
1933 | 1933 | ||
1934 | float ground = World.GetGroundHeight((float)targetPos.x, (float)targetPos.y); | 1934 | float ground = World.GetGroundHeight((float)targetPos.x, (float)targetPos.y); |
1935 | bool disable_underground_movement = m_ScriptEngine.Config.GetBoolean("DisableUndergroundMovement", true); | 1935 | bool disable_underground_movement = m_ScriptEngine.Config.GetBoolean("DisableUndergroundMovement", true); |
@@ -1962,17 +1962,23 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1962 | public LSL_Vector llGetLocalPos() | 1962 | public LSL_Vector llGetLocalPos() |
1963 | { | 1963 | { |
1964 | m_host.AddScriptLPS(1); | 1964 | m_host.AddScriptLPS(1); |
1965 | if (m_host.ParentID != 0) | 1965 | return GetPartLocalPos(m_host); |
1966 | } | ||
1967 | |||
1968 | protected LSL_Vector GetPartLocalPos(SceneObjectPart part) | ||
1969 | { | ||
1970 | m_host.AddScriptLPS(1); | ||
1971 | if (part.ParentID != 0) | ||
1966 | { | 1972 | { |
1967 | return new LSL_Vector(m_host.OffsetPosition.X, | 1973 | return new LSL_Vector(part.OffsetPosition.X, |
1968 | m_host.OffsetPosition.Y, | 1974 | part.OffsetPosition.Y, |
1969 | m_host.OffsetPosition.Z); | 1975 | part.OffsetPosition.Z); |
1970 | } | 1976 | } |
1971 | else | 1977 | else |
1972 | { | 1978 | { |
1973 | return new LSL_Vector(m_host.AbsolutePosition.X, | 1979 | return new LSL_Vector(part.AbsolutePosition.X, |
1974 | m_host.AbsolutePosition.Y, | 1980 | part.AbsolutePosition.Y, |
1975 | m_host.AbsolutePosition.Z); | 1981 | part.AbsolutePosition.Z); |
1976 | } | 1982 | } |
1977 | } | 1983 | } |
1978 | 1984 | ||