aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region')
-rw-r--r--OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs38
-rw-r--r--OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs16
-rw-r--r--OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs2
-rw-r--r--OpenSim/Region/Framework/Interfaces/IScriptModule.cs11
-rw-r--r--OpenSim/Region/OptionalModules/Avatar/Voice/FreeSwitchVoice/FreeSwitchVoiceModule.cs21
-rw-r--r--OpenSim/Region/OptionalModules/Avatar/Voice/VivoxVoice/VivoxVoiceModule.cs12
-rw-r--r--OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs46
-rw-r--r--OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs2
-rwxr-xr-xOpenSim/Region/Physics/BulletSPlugin/BulletSimTODO.txt18
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs1
10 files changed, 103 insertions, 64 deletions
diff --git a/OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs b/OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
index 60b7190..b9c373b 100644
--- a/OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
+++ b/OpenSim/Region/CoreModules/Scripting/LSLHttp/UrlModule.cs
@@ -88,15 +88,11 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp
88 /// </summary> 88 /// </summary>
89 private int m_TotalUrls = 15000; 89 private int m_TotalUrls = 15000;
90 90
91 private uint https_port = 0; 91 private uint m_HttpsPort = 0;
92 private IHttpServer m_HttpServer = null; 92 private IHttpServer m_HttpServer = null;
93 private IHttpServer m_HttpsServer = null; 93 private IHttpServer m_HttpsServer = null;
94 94
95 private string m_ExternalHostNameForLSL = ""; 95 public string ExternalHostNameForLSL { get; private set; }
96 public string ExternalHostNameForLSL
97 {
98 get { return m_ExternalHostNameForLSL; }
99 }
100 96
101 public Type ReplaceableInterface 97 public Type ReplaceableInterface
102 { 98 {
@@ -110,13 +106,21 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp
110 106
111 public void Initialise(IConfigSource config) 107 public void Initialise(IConfigSource config)
112 { 108 {
113 m_ExternalHostNameForLSL = config.Configs["Network"].GetString("ExternalHostNameForLSL", System.Environment.MachineName); 109 IConfig networkConfig = config.Configs["Network"];
114 bool ssl_enabled = config.Configs["Network"].GetBoolean("https_listener",false); 110
115 if (ssl_enabled) 111 if (networkConfig != null)
116 { 112 {
117 https_port = (uint) config.Configs["Network"].GetInt("https_port",0); 113 ExternalHostNameForLSL = config.Configs["Network"].GetString("ExternalHostNameForLSL", null);
114
115 bool ssl_enabled = config.Configs["Network"].GetBoolean("https_listener", false);
116
117 if (ssl_enabled)
118 m_HttpsPort = (uint)config.Configs["Network"].GetInt("https_port", (int)m_HttpsPort);
118 } 119 }
119 120
121 if (ExternalHostNameForLSL == null)
122 ExternalHostNameForLSL = System.Environment.MachineName;
123
120 IConfig llFunctionsConfig = config.Configs["LL-Functions"]; 124 IConfig llFunctionsConfig = config.Configs["LL-Functions"];
121 125
122 if (llFunctionsConfig != null) 126 if (llFunctionsConfig != null)
@@ -136,9 +140,9 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp
136 m_HttpServer = MainServer.Instance; 140 m_HttpServer = MainServer.Instance;
137 // 141 //
138 // We can use the https if it is enabled 142 // We can use the https if it is enabled
139 if (https_port > 0) 143 if (m_HttpsPort > 0)
140 { 144 {
141 m_HttpsServer = MainServer.GetHttpServer(https_port); 145 m_HttpsServer = MainServer.GetHttpServer(m_HttpsPort);
142 } 146 }
143 } 147 }
144 148
@@ -176,7 +180,7 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp
176 engine.PostScriptEvent(itemID, "http_request", new Object[] { urlcode.ToString(), "URL_REQUEST_DENIED", "" }); 180 engine.PostScriptEvent(itemID, "http_request", new Object[] { urlcode.ToString(), "URL_REQUEST_DENIED", "" });
177 return urlcode; 181 return urlcode;
178 } 182 }
179 string url = "http://" + m_ExternalHostNameForLSL + ":" + m_HttpServer.Port.ToString() + "/lslhttp/" + urlcode.ToString(); 183 string url = "http://" + ExternalHostNameForLSL + ":" + m_HttpServer.Port.ToString() + "/lslhttp/" + urlcode.ToString();
180 184
181 UrlData urlData = new UrlData(); 185 UrlData urlData = new UrlData();
182 urlData.hostID = host.UUID; 186 urlData.hostID = host.UUID;
@@ -221,7 +225,7 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp
221 engine.PostScriptEvent(itemID, "http_request", new Object[] { urlcode.ToString(), "URL_REQUEST_DENIED", "" }); 225 engine.PostScriptEvent(itemID, "http_request", new Object[] { urlcode.ToString(), "URL_REQUEST_DENIED", "" });
222 return urlcode; 226 return urlcode;
223 } 227 }
224 string url = "https://" + m_ExternalHostNameForLSL + ":" + m_HttpsServer.Port.ToString() + "/lslhttps/" + urlcode.ToString(); 228 string url = "https://" + ExternalHostNameForLSL + ":" + m_HttpsServer.Port.ToString() + "/lslhttps/" + urlcode.ToString();
225 229
226 UrlData urlData = new UrlData(); 230 UrlData urlData = new UrlData();
227 urlData.hostID = host.UUID; 231 urlData.hostID = host.UUID;
@@ -542,7 +546,7 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp
542 { 546 {
543 Hashtable headers = (Hashtable)request["headers"]; 547 Hashtable headers = (Hashtable)request["headers"];
544 548
545// string uri_full = "http://" + m_ExternalHostNameForLSL + ":" + m_HttpServer.Port.ToString() + uri;// "/lslhttp/" + urlcode.ToString() + "/"; 549// string uri_full = "http://" + ExternalHostNameForLSL + ":" + m_HttpServer.Port.ToString() + uri;// "/lslhttp/" + urlcode.ToString() + "/";
546 550
547 int pos1 = uri.IndexOf("/");// /lslhttp 551 int pos1 = uri.IndexOf("/");// /lslhttp
548 int pos2 = uri.IndexOf("/", pos1 + 1);// /lslhttp/ 552 int pos2 = uri.IndexOf("/", pos1 + 1);// /lslhttp/
@@ -558,10 +562,10 @@ namespace OpenSim.Region.CoreModules.Scripting.LSLHttp
558 UrlData url = null; 562 UrlData url = null;
559 string urlkey; 563 string urlkey;
560 if (!is_ssl) 564 if (!is_ssl)
561 urlkey = "http://" + m_ExternalHostNameForLSL + ":" + m_HttpServer.Port.ToString() + uri_tmp; 565 urlkey = "http://" + ExternalHostNameForLSL + ":" + m_HttpServer.Port.ToString() + uri_tmp;
562 //m_UrlMap[]; 566 //m_UrlMap[];
563 else 567 else
564 urlkey = "https://" + m_ExternalHostNameForLSL + ":" + m_HttpsServer.Port.ToString() + uri_tmp; 568 urlkey = "https://" + ExternalHostNameForLSL + ":" + m_HttpsServer.Port.ToString() + uri_tmp;
565 569
566 if (m_UrlMap.ContainsKey(urlkey)) 570 if (m_UrlMap.ContainsKey(urlkey))
567 { 571 {
diff --git a/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs b/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs
index f395441..14304a7 100644
--- a/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs
+++ b/OpenSim/Region/CoreModules/Scripting/VectorRender/VectorRenderModule.cs
@@ -838,13 +838,17 @@ namespace OpenSim.Region.CoreModules.Scripting.VectorRender
838 try 838 try
839 { 839 {
840 WebRequest request = HttpWebRequest.Create(url); 840 WebRequest request = HttpWebRequest.Create(url);
841//Ckrinke: Comment out for now as 'str' is unused. Bring it back into play later when it is used. 841
842//Ckrinke Stream str = null; 842 using (HttpWebResponse response = (HttpWebResponse)(request).GetResponse())
843 HttpWebResponse response = (HttpWebResponse)(request).GetResponse();
844 if (response.StatusCode == HttpStatusCode.OK)
845 { 843 {
846 Bitmap image = new Bitmap(response.GetResponseStream()); 844 if (response.StatusCode == HttpStatusCode.OK)
847 return image; 845 {
846 using (Stream s = response.GetResponseStream())
847 {
848 Bitmap image = new Bitmap(s);
849 return image;
850 }
851 }
848 } 852 }
849 } 853 }
850 catch { } 854 catch { }
diff --git a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs
index c868ee4..bf18616 100644
--- a/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs
+++ b/OpenSim/Region/CoreModules/World/WorldMap/WorldMapModule.cs
@@ -94,7 +94,7 @@ namespace OpenSim.Region.CoreModules.World.WorldMap
94 if (Util.GetConfigVarFromSections<string>( 94 if (Util.GetConfigVarFromSections<string>(
95 config, "WorldMapModule", configSections, "WorldMap") == "WorldMap") 95 config, "WorldMapModule", configSections, "WorldMap") == "WorldMap")
96 m_Enabled = true; 96 m_Enabled = true;
97 97
98 blacklistTimeout 98 blacklistTimeout
99 = Util.GetConfigVarFromSections<int>(config, "BlacklistTimeout", configSections, 10 * 60) * 1000; 99 = Util.GetConfigVarFromSections<int>(config, "BlacklistTimeout", configSections, 10 * 60) * 1000;
100 } 100 }
diff --git a/OpenSim/Region/Framework/Interfaces/IScriptModule.cs b/OpenSim/Region/Framework/Interfaces/IScriptModule.cs
index 143af48..ced4e91 100644
--- a/OpenSim/Region/Framework/Interfaces/IScriptModule.cs
+++ b/OpenSim/Region/Framework/Interfaces/IScriptModule.cs
@@ -52,7 +52,18 @@ namespace OpenSim.Region.Framework.Interfaces
52 string GetXMLState(UUID itemID); 52 string GetXMLState(UUID itemID);
53 bool SetXMLState(UUID itemID, string xml); 53 bool SetXMLState(UUID itemID, string xml);
54 54
55 /// <summary>
56 /// Post a script event to a single script.
57 /// </summary>
58 /// <returns>true if the post suceeded, false if it did not</returns>
59 /// <param name='itemID'>The item ID of the script.</param>
60 /// <param name='name'>The name of the event.</param>
61 /// <param name='args'>
62 /// The arguments of the event. These are in the order in which they appear.
63 /// e.g. for http_request this will be an object array of key request_id, string method, string body
64 /// </param>
55 bool PostScriptEvent(UUID itemID, string name, Object[] args); 65 bool PostScriptEvent(UUID itemID, string name, Object[] args);
66
56 bool PostObjectEvent(UUID itemID, string name, Object[] args); 67 bool PostObjectEvent(UUID itemID, string name, Object[] args);
57 68
58 /// <summary> 69 /// <summary>
diff --git a/OpenSim/Region/OptionalModules/Avatar/Voice/FreeSwitchVoice/FreeSwitchVoiceModule.cs b/OpenSim/Region/OptionalModules/Avatar/Voice/FreeSwitchVoice/FreeSwitchVoiceModule.cs
index f292a75..0cec959 100644
--- a/OpenSim/Region/OptionalModules/Avatar/Voice/FreeSwitchVoice/FreeSwitchVoiceModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/Voice/FreeSwitchVoice/FreeSwitchVoiceModule.cs
@@ -551,13 +551,20 @@ namespace OpenSim.Region.OptionalModules.Avatar.Voice.FreeSwitchVoice
551 reqStream.Close(); 551 reqStream.Close();
552 } 552 }
553 553
554 HttpWebResponse fwdrsp = (HttpWebResponse)forwardreq.GetResponse(); 554 using (HttpWebResponse fwdrsp = (HttpWebResponse)forwardreq.GetResponse())
555 Encoding encoding = Util.UTF8; 555 {
556 StreamReader fwdresponsestream = new StreamReader(fwdrsp.GetResponseStream(), encoding); 556 Encoding encoding = Util.UTF8;
557 fwdresponsestr = fwdresponsestream.ReadToEnd(); 557
558 fwdresponsecontenttype = fwdrsp.ContentType; 558 using (Stream s = fwdrsp.GetResponseStream())
559 fwdresponsecode = (int)fwdrsp.StatusCode; 559 {
560 fwdresponsestream.Close(); 560 using (StreamReader fwdresponsestream = new StreamReader(s))
561 {
562 fwdresponsestr = fwdresponsestream.ReadToEnd();
563 fwdresponsecontenttype = fwdrsp.ContentType;
564 fwdresponsecode = (int)fwdrsp.StatusCode;
565 }
566 }
567 }
561 568
562 response["content_type"] = fwdresponsecontenttype; 569 response["content_type"] = fwdresponsecontenttype;
563 response["str_response_string"] = fwdresponsestr; 570 response["str_response_string"] = fwdresponsestr;
diff --git a/OpenSim/Region/OptionalModules/Avatar/Voice/VivoxVoice/VivoxVoiceModule.cs b/OpenSim/Region/OptionalModules/Avatar/Voice/VivoxVoice/VivoxVoiceModule.cs
index 7da1de6..e756c70 100644
--- a/OpenSim/Region/OptionalModules/Avatar/Voice/VivoxVoice/VivoxVoiceModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/Voice/VivoxVoice/VivoxVoiceModule.cs
@@ -1123,18 +1123,16 @@ namespace OpenSim.Region.OptionalModules.Avatar.Voice.VivoxVoice
1123 // Otherwise prepare the request 1123 // Otherwise prepare the request
1124// m_log.DebugFormat("[VivoxVoice] Sending request <{0}>", requrl); 1124// m_log.DebugFormat("[VivoxVoice] Sending request <{0}>", requrl);
1125 1125
1126 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(requrl); 1126 HttpWebRequest req = (HttpWebRequest)WebRequest.Create(requrl);
1127 HttpWebResponse rsp = null;
1128 1127
1129 // We are sending just parameters, no content 1128 // We are sending just parameters, no content
1130 req.ContentLength = 0; 1129 req.ContentLength = 0;
1131 1130
1132 // Send request and retrieve the response 1131 // Send request and retrieve the response
1133 rsp = (HttpWebResponse)req.GetResponse(); 1132 using (HttpWebResponse rsp = (HttpWebResponse)req.GetResponse())
1134 1133 using (Stream s = rsp.GetResponseStream())
1135 XmlTextReader rdr = new XmlTextReader(rsp.GetResponseStream()); 1134 using (XmlTextReader rdr = new XmlTextReader(s))
1136 doc.Load(rdr); 1135 doc.Load(rdr);
1137 rdr.Close();
1138 } 1136 }
1139 catch (Exception e) 1137 catch (Exception e)
1140 { 1138 {
diff --git a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs
index 1101851..71b24ac 100644
--- a/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs
+++ b/OpenSim/Region/OptionalModules/Avatar/XmlRpcGroups/XmlRpcGroupsServicesConnectorModule.cs
@@ -1146,28 +1146,38 @@ namespace Nwc.XmlRpc
1146 request.AllowWriteStreamBuffering = true; 1146 request.AllowWriteStreamBuffering = true;
1147 request.KeepAlive = !_disableKeepAlive; 1147 request.KeepAlive = !_disableKeepAlive;
1148 1148
1149 Stream stream = request.GetRequestStream(); 1149 using (Stream stream = request.GetRequestStream())
1150 XmlTextWriter xml = new XmlTextWriter(stream, Encoding.ASCII);
1151 _serializer.Serialize(xml, this);
1152 xml.Flush();
1153 xml.Close();
1154
1155 HttpWebResponse response = (HttpWebResponse)request.GetResponse();
1156 StreamReader input = new StreamReader(response.GetResponseStream());
1157
1158 string inputXml = input.ReadToEnd();
1159 XmlRpcResponse resp;
1160 try
1161 { 1150 {
1162 resp = (XmlRpcResponse)_deserializer.Deserialize(inputXml); 1151 using (XmlTextWriter xml = new XmlTextWriter(stream, Encoding.ASCII))
1152 {
1153 _serializer.Serialize(xml, this);
1154 xml.Flush();
1155 }
1163 } 1156 }
1164 catch (Exception e) 1157
1158 XmlRpcResponse resp;
1159
1160 using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
1165 { 1161 {
1166 RequestResponse = inputXml; 1162 using (Stream s = response.GetResponseStream())
1167 throw e; 1163 {
1164 using (StreamReader input = new StreamReader(s))
1165 {
1166 string inputXml = input.ReadToEnd();
1167
1168 try
1169 {
1170 resp = (XmlRpcResponse)_deserializer.Deserialize(inputXml);
1171 }
1172 catch (Exception e)
1173 {
1174 RequestResponse = inputXml;
1175 throw e;
1176 }
1177 }
1178 }
1168 } 1179 }
1169 input.Close(); 1180
1170 response.Close();
1171 return resp; 1181 return resp;
1172 } 1182 }
1173 } 1183 }
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs b/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs
index 4dff927..8f660c4 100644
--- a/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs
+++ b/OpenSim/Region/Physics/BulletSPlugin/BSPrim.cs
@@ -470,7 +470,7 @@ public class BSPrim : BSPhysObject
470 // Note that this does not change _mass! 470 // Note that this does not change _mass!
471 public override void UpdatePhysicalMassProperties(float physMass, bool inWorld) 471 public override void UpdatePhysicalMassProperties(float physMass, bool inWorld)
472 { 472 {
473 if (PhysBody.HasPhysicalBody) 473 if (PhysBody.HasPhysicalBody && PhysShape.HasPhysicalShape)
474 { 474 {
475 if (IsStatic) 475 if (IsStatic)
476 { 476 {
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BulletSimTODO.txt b/OpenSim/Region/Physics/BulletSPlugin/BulletSimTODO.txt
index 49718c4..4dc16f4 100755
--- a/OpenSim/Region/Physics/BulletSPlugin/BulletSimTODO.txt
+++ b/OpenSim/Region/Physics/BulletSPlugin/BulletSimTODO.txt
@@ -1,5 +1,12 @@
1CURRENT PRIORITIES 1CURRENT PRIORITIES
2================================================= 2=================================================
3Use the HACD convex hull routine in Bullet rather than the C# version.
4 Speed up hullifying large meshes.
5Enable vehicle border crossings (at least as poorly as ODE)
6 Terrain skirts
7 Avatar created in previous region and not new region when crossing border
8 Vehicle recreated in new sim at small Z value (offset from root value?) (DONE)
9Lock axis
3Deleting a linkset while standing on the root will leave the physical shape of the root behind. 10Deleting a linkset while standing on the root will leave the physical shape of the root behind.
4 Not sure if it is because standing on it. Done with large prim linksets. 11 Not sure if it is because standing on it. Done with large prim linksets.
5Vehicle angular vertical attraction 12Vehicle angular vertical attraction
@@ -7,16 +14,11 @@ vehicle angular banking
7Center-of-gravity 14Center-of-gravity
8Vehicle angular deflection 15Vehicle angular deflection
9 Preferred orientation angular correction fix 16 Preferred orientation angular correction fix
10Enable vehicle border crossings (at least as poorly as ODE)
11 Terrain skirts
12 Avatar created in previous region and not new region when crossing border
13 Vehicle recreated in new sim at small Z value (offset from root value?) (DONE)
14when should angular and linear motor targets be zeroed? when selected? 17when should angular and linear motor targets be zeroed? when selected?
15 Need a vehicle.clear()? Or an 'else' in prestep if not physical. 18 Need a vehicle.clear()? Or an 'else' in prestep if not physical.
16Teravus llMoveToTarget script debug 19Teravus llMoveToTarget script debug
17 Mixing of hover, buoyancy/gravity, moveToTarget, into one force 20 Mixing of hover, buoyancy/gravity, moveToTarget, into one force
18 Setting hover height to zero disables hover even if hover flags are on (from SL wiki) 21 Setting hover height to zero disables hover even if hover flags are on (from SL wiki)
19Nebadon vehicles turning funny in arena
20limitMotorUp calibration (more down?) 22limitMotorUp calibration (more down?)
21llRotLookAt 23llRotLookAt
22llLookAt 24llLookAt
@@ -66,6 +68,8 @@ Vehicle attributes are not restored when a vehicle is rezzed on region creation
66 68
67GENERAL TODO LIST: 69GENERAL TODO LIST:
68================================================= 70=================================================
71Resitution of a prim works on another prim but not on terrain.
72 The dropped prim doesn't bounce properly on the terrain.
69Add a sanity check for PIDTarget location. 73Add a sanity check for PIDTarget location.
70Level-of-detail for mesh creation. Prims with circular interiors require lod of 32. 74Level-of-detail for mesh creation. Prims with circular interiors require lod of 32.
71 Is much saved with lower LODs? At the moment, all set to 32. 75 Is much saved with lower LODs? At the moment, all set to 32.
@@ -163,7 +167,6 @@ Create tests for different interface components
163 Have test objects/scripts measure themselves and turn color if correct/bad 167 Have test objects/scripts measure themselves and turn color if correct/bad
164 Test functions in SL and calibrate correctness there 168 Test functions in SL and calibrate correctness there
165 Create auto rezzer and tracker to run through the tests 169 Create auto rezzer and tracker to run through the tests
166Use the HACD convex hull routine in Bullet rather than the C# version.
167Do we need to do convex hulls all the time? Can complex meshes be left meshes? 170Do we need to do convex hulls all the time? Can complex meshes be left meshes?
168 There is some problem with meshes and collisions 171 There is some problem with meshes and collisions
169 Hulls are not as detailed as meshes. Hulled vehicles insides are different shape. 172 Hulls are not as detailed as meshes. Hulled vehicles insides are different shape.
@@ -334,4 +337,5 @@ Child movement in linkset (don't rebuild linkset) (DONE 20130122))
334Avatar standing on a moving object should start to move with the object. (DONE 20130125) 337Avatar standing on a moving object should start to move with the object. (DONE 20130125)
335Angular motion around Z moves the vehicle in world Z and not vehicle Z in ODE. 338Angular motion around Z moves the vehicle in world Z and not vehicle Z in ODE.
336 Verify that angular motion specified around Z moves in the vehicle coordinates. 339 Verify that angular motion specified around Z moves in the vehicle coordinates.
337 DONE 20130120: BulletSim properly applies force in vehicle relative coordinates. \ No newline at end of file 340 DONE 20130120: BulletSim properly applies force in vehicle relative coordinates.
341Nebadon vehicles turning funny in arena (DONE) \ No newline at end of file
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 4c6950d..b67db20 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -10201,6 +10201,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
10201 return UUID.Zero.ToString(); 10201 return UUID.Zero.ToString();
10202 } 10202 }
10203 } 10203 }
10204
10204 public LSL_String llRequestURL() 10205 public LSL_String llRequestURL()
10205 { 10206 {
10206 m_host.AddScriptLPS(1); 10207 m_host.AddScriptLPS(1);