aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Framework/Servers/OSHttpHandler.cs1
-rw-r--r--OpenSim/Framework/Servers/OSHttpRequestPump.cs64
-rw-r--r--OpenSim/Region/Environment/Modules/World/Archiver/ArchiveConstants.cs12
-rw-r--r--OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs5
-rw-r--r--OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs1
-rw-r--r--OpenSim/Region/Physics/Manager/PhysicsActor.cs1
-rw-r--r--OpenSim/Region/Physics/Meshing/HelperTypes.cs9
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/BagofAnswers.cs56
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor2.cs16
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor3.cs16
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Parser.cs8
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Variable.cs8
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/YP.cs64
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/YPCompiler.cs18
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/CodeTools/YP2CSConverter.cs9
-rw-r--r--OpenSim/Region/ScriptEngine/XEngine/XEngine.cs3
16 files changed, 158 insertions, 133 deletions
diff --git a/OpenSim/Framework/Servers/OSHttpHandler.cs b/OpenSim/Framework/Servers/OSHttpHandler.cs
index c4ab81c..da96cca 100644
--- a/OpenSim/Framework/Servers/OSHttpHandler.cs
+++ b/OpenSim/Framework/Servers/OSHttpHandler.cs
@@ -57,6 +57,7 @@ namespace OpenSim.Framework.Servers
57 /// </summary> 57 /// </summary>
58 public enum OSHttpHandlerResult 58 public enum OSHttpHandlerResult
59 { 59 {
60 Unprocessed,
60 Pass, 61 Pass,
61 Handled, 62 Handled,
62 Detached, 63 Detached,
diff --git a/OpenSim/Framework/Servers/OSHttpRequestPump.cs b/OpenSim/Framework/Servers/OSHttpRequestPump.cs
index 3459cc6..44fba47 100644
--- a/OpenSim/Framework/Servers/OSHttpRequestPump.cs
+++ b/OpenSim/Framework/Servers/OSHttpRequestPump.cs
@@ -98,42 +98,54 @@ namespace OpenSim.Framework.Servers
98 { 98 {
99 OSHttpRequest req = null; 99 OSHttpRequest req = null;
100 100
101 try { 101 while (true)
102 while (true) 102 {
103 { 103 try {
104 // get job to do 104 // dequeue an OSHttpRequest from OSHttpServer's
105 // request queue
105 req = _queue.Dequeue(); 106 req = _queue.Dequeue();
106 107
107 // get list of registered handlers 108 // get a copy of the list of registered handlers
108 List<OSHttpHandler> handlers = _server.OSHttpHandlers; 109 List<OSHttpHandler> handlers = _server.OSHttpHandlers;
109 110
110 // prune list and sort from most specific to least 111 // prune list and have it sorted from most
111 // specific 112 // specific to least specific
112 handlers = MatchHandlers(req, handlers); 113 handlers = MatchHandlers(req, handlers);
113 114
114 // process req 115 // process req: we try each handler in turn until
116 // we are either out of handlers or get back a
117 // Handled or Detached
118 OSHttpHandlerResult rc = OSHttpHandlerResult.Unprocessed;
115 foreach(OSHttpHandler h in handlers) 119 foreach(OSHttpHandler h in handlers)
116 { 120 {
117 OSHttpHandlerResult rc = h.Process(req); 121 rc = h.Process(req);
118 // handler did not process the request, try 122
119 // next handler 123 // Pass: handler did not process the request,
124 // try next handler
120 if (OSHttpHandlerResult.Pass == rc) continue; 125 if (OSHttpHandlerResult.Pass == rc) continue;
121 // handler is taking over processing of 126 // Detached: handler is taking over processing
122 // request, we are done 127 // of request, we are done
123 if (OSHttpHandlerResult.Detached == rc) break; 128 if (OSHttpHandlerResult.Detached == rc) break;
124 129
125 // request was handled, we need to clean up 130 if (OSHttpHandlerResult.Handled != rc)
126 // TODO: cleanup :-) 131 {
127 132 // something went wrong
133 throw new Exception(String.Format("[{0}] got unexpected OSHttpHandlerResult {1}", EngineID, rc));
134 }
135
136 // Handled: clean up
137 // response.KeepAlive = false;
138 // response.SendChunked = false;
139
128 break; 140 break;
129 } 141 }
130 142
143 }
144 catch (Exception e)
145 {
146 _log.DebugFormat("[{0}] OSHttpHandler problem: {1}", EngineID, e.ToString());
147 _log.ErrorFormat("[{0}] OSHttpHandler problem: {1}", EngineID, e.Message);
131 } 148 }
132 }
133 catch (Exception e)
134 {
135 _log.DebugFormat("[{0}] something went wrong: {1}", EngineID, e.ToString());
136 _log.ErrorFormat("[{0}] something went wrong: {1}, terminating this pump", EngineID, e.Message);
137 } 149 }
138 } 150 }
139 151
diff --git a/OpenSim/Region/Environment/Modules/World/Archiver/ArchiveConstants.cs b/OpenSim/Region/Environment/Modules/World/Archiver/ArchiveConstants.cs
index 0115d8d..7b76cb8 100644
--- a/OpenSim/Region/Environment/Modules/World/Archiver/ArchiveConstants.cs
+++ b/OpenSim/Region/Environment/Modules/World/Archiver/ArchiveConstants.cs
@@ -77,9 +77,11 @@ namespace OpenSim.Region.Environment.Modules.World.Archiver
77 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.Notecard] = ".ncd"; 77 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.Notecard] = ".ncd";
78 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.Object] = ".oob"; 78 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.Object] = ".oob";
79 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.RootFolder] = ".rfd"; // Not sure if we'll ever see this 79 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.RootFolder] = ".rfd"; // Not sure if we'll ever see this
80 #pragma warning disable 0612 80// disable warning: we know Script is obsolete, but need to support it
81// anyhow
82#pragma warning disable 0612
81 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.Script] = ".spt"; // Not sure if we'll ever see this 83 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.Script] = ".spt"; // Not sure if we'll ever see this
82 #pragma warning restore 0612 84#pragma warning restore 0612
83 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.Simstate] = ".sst"; // Not sure if we'll ever see this 85 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.Simstate] = ".sst"; // Not sure if we'll ever see this
84 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.SnapshotFolder] = ".sfd"; // Not sure if we'll ever see this 86 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.SnapshotFolder] = ".sfd"; // Not sure if we'll ever see this
85 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.Sound] = ".ogg"; 87 ASSET_TYPE_TO_EXTENSION[(sbyte)AssetType.Sound] = ".ogg";
@@ -102,9 +104,11 @@ namespace OpenSim.Region.Environment.Modules.World.Archiver
102 EXTENSION_TO_ASSET_TYPE[".ncd"] = (sbyte)AssetType.Notecard; 104 EXTENSION_TO_ASSET_TYPE[".ncd"] = (sbyte)AssetType.Notecard;
103 EXTENSION_TO_ASSET_TYPE[".oob"] = (sbyte)AssetType.Object; 105 EXTENSION_TO_ASSET_TYPE[".oob"] = (sbyte)AssetType.Object;
104 EXTENSION_TO_ASSET_TYPE[".rfd"] = (sbyte)AssetType.RootFolder; 106 EXTENSION_TO_ASSET_TYPE[".rfd"] = (sbyte)AssetType.RootFolder;
105 #pragma warning disable 0612 107// disable warning: we know Script is obsolete, but need to support it
108// anyhow
109#pragma warning disable 0612
106 EXTENSION_TO_ASSET_TYPE[".spt"] = (sbyte)AssetType.Script; 110 EXTENSION_TO_ASSET_TYPE[".spt"] = (sbyte)AssetType.Script;
107 #pragma warning restore 0612 111#pragma warning restore 0612
108 EXTENSION_TO_ASSET_TYPE[".sst"] = (sbyte)AssetType.Simstate; 112 EXTENSION_TO_ASSET_TYPE[".sst"] = (sbyte)AssetType.Simstate;
109 EXTENSION_TO_ASSET_TYPE[".sfd"] = (sbyte)AssetType.SnapshotFolder; 113 EXTENSION_TO_ASSET_TYPE[".sfd"] = (sbyte)AssetType.SnapshotFolder;
110 EXTENSION_TO_ASSET_TYPE[".ogg"] = (sbyte)AssetType.Sound; 114 EXTENSION_TO_ASSET_TYPE[".ogg"] = (sbyte)AssetType.Sound;
diff --git a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
index 5d94407..a8ad56f 100644
--- a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
+++ b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs
@@ -139,8 +139,9 @@ namespace OpenSim.Region.Environment.Modules.World.NPC
139 #endregion 139 #endregion
140 140
141 #region Event Definitions IGNORE 141 #region Event Definitions IGNORE
142#pragma warning disable 67
143 142
143// disable warning: public events constituting public API
144#pragma warning disable 67
144 public event Action<IClientAPI> OnLogout; 145 public event Action<IClientAPI> OnLogout;
145 public event ObjectPermissions OnObjectPermissions; 146 public event ObjectPermissions OnObjectPermissions;
146 147
@@ -294,8 +295,8 @@ namespace OpenSim.Region.Environment.Modules.World.NPC
294 public event GetScriptRunning OnGetScriptRunning; 295 public event GetScriptRunning OnGetScriptRunning;
295 public event SetScriptRunning OnSetScriptRunning; 296 public event SetScriptRunning OnSetScriptRunning;
296 public event UpdateVector OnAutoPilotGo; 297 public event UpdateVector OnAutoPilotGo;
297
298#pragma warning restore 67 298#pragma warning restore 67
299
299 #endregion 300 #endregion
300 301
301 #region Overrriden Methods IGNORE 302 #region Overrriden Methods IGNORE
diff --git a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
index 4379c44..fb9cd1b 100644
--- a/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
+++ b/OpenSim/Region/Examples/SimpleModule/MyNpcCharacter.cs
@@ -43,6 +43,7 @@ namespace OpenSim.Region.Examples.SimpleModule
43 private short count = 0; 43 private short count = 0;
44 private short frame = 0; 44 private short frame = 0;
45 45
46// disable warning: public events, part of the public API
46#pragma warning disable 67 47#pragma warning disable 67
47 48
48 public event Action<IClientAPI> OnLogout; 49 public event Action<IClientAPI> OnLogout;
diff --git a/OpenSim/Region/Physics/Manager/PhysicsActor.cs b/OpenSim/Region/Physics/Manager/PhysicsActor.cs
index c87e748..22e21a5 100644
--- a/OpenSim/Region/Physics/Manager/PhysicsActor.cs
+++ b/OpenSim/Region/Physics/Manager/PhysicsActor.cs
@@ -100,6 +100,7 @@ namespace OpenSim.Region.Physics.Manager
100 public delegate void CollisionUpdate(EventArgs e); 100 public delegate void CollisionUpdate(EventArgs e);
101 public delegate void OutOfBounds(PhysicsVector pos); 101 public delegate void OutOfBounds(PhysicsVector pos);
102 102
103// disable warning: public events
103#pragma warning disable 67 104#pragma warning disable 67
104 public event PositionUpdate OnPositionUpdate; 105 public event PositionUpdate OnPositionUpdate;
105 public event VelocityUpdate OnVelocityUpdate; 106 public event VelocityUpdate OnVelocityUpdate;
diff --git a/OpenSim/Region/Physics/Meshing/HelperTypes.cs b/OpenSim/Region/Physics/Meshing/HelperTypes.cs
index 5d9823c..418baf5 100644
--- a/OpenSim/Region/Physics/Meshing/HelperTypes.cs
+++ b/OpenSim/Region/Physics/Meshing/HelperTypes.cs
@@ -193,9 +193,10 @@ public class Vertex : PhysicsVector, IComparable<Vertex>
193 return new Vertex(Y * v.Z - Z * v.Y, Z * v.X - X * v.Z, X * v.Y - Y * v.X); 193 return new Vertex(Y * v.Z - Z * v.Y, Z * v.X - X * v.Z, X * v.Y - Y * v.X);
194 } 194 }
195 195
196 // mono compiler moans about overloading operators hiding base 196 // disable warning: mono compiler moans about overloading
197 // operator but should not according to C# language spec 197 // operators hiding base operator but should not according to C#
198 #pragma warning disable 0108 198 // language spec
199#pragma warning disable 0108
199 public static Vertex operator *(Vertex v, Quaternion q) 200 public static Vertex operator *(Vertex v, Quaternion q)
200 { 201 {
201 Matrix4 tm = q.computeMatrix(); 202 Matrix4 tm = q.computeMatrix();
@@ -253,7 +254,7 @@ public class Vertex : PhysicsVector, IComparable<Vertex>
253 v1.Z *= mul; 254 v1.Z *= mul;
254 return v1; 255 return v1;
255 } 256 }
256 #pragma warning restore 0108 257#pragma warning restore 0108
257 258
258 259
259 public float dot(Vertex v) 260 public float dot(Vertex v)
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/BagofAnswers.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/BagofAnswers.cs
index c52adb1..c2bb0b7 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/BagofAnswers.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/BagofAnswers.cs
@@ -127,27 +127,27 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
127 // No unbound free variables, so we only filled one bag. If empty, bagof fails. 127 // No unbound free variables, so we only filled one bag. If empty, bagof fails.
128 if (_findallBagArray.Count > 0) 128 if (_findallBagArray.Count > 0)
129 { 129 {
130 // disable warning on l1, don't see how we can 130// disable warning: don't see how we can code this differently short
131 // code this differently 131// of rewriting the whole thing
132 #pragma warning disable 0168 132#pragma warning disable 0168
133 foreach (bool l1 in bagArrayVariable.unify(_findallBagArray)) 133 foreach (bool l1 in bagArrayVariable.unify(_findallBagArray))
134 yield return false; 134 yield return false;
135 #pragma warning restore 0168 135#pragma warning restore 0168
136 } 136 }
137 } 137 }
138 else 138 else
139 { 139 {
140 foreach (KeyValuePair<object[], List<object>> valuesAndBag in _bagForFreeVariables) 140 foreach (KeyValuePair<object[], List<object>> valuesAndBag in _bagForFreeVariables)
141 { 141 {
142 // disable warning on l1 and l2, don't see how we can 142// disable warning: don't see how we can code this differently short
143 // code this differently 143// of rewriting the whole thing
144 #pragma warning disable 0168 144#pragma warning disable 0168
145 foreach (bool l1 in YP.unifyArrays(_freeVariables, valuesAndBag.Key)) 145 foreach (bool l1 in YP.unifyArrays(_freeVariables, valuesAndBag.Key))
146 { 146 {
147 foreach (bool l2 in bagArrayVariable.unify(valuesAndBag.Value)) 147 foreach (bool l2 in bagArrayVariable.unify(valuesAndBag.Value))
148 yield return false; 148 yield return false;
149 } 149 }
150 #pragma warning restore 0168 150#pragma warning restore 0168
151 // Debug: Should we free memory of the answers already returned? 151 // Debug: Should we free memory of the answers already returned?
152 } 152 }
153 } 153 }
@@ -161,15 +161,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
161 public IEnumerable<bool> result(object Bag) 161 public IEnumerable<bool> result(object Bag)
162 { 162 {
163 Variable bagArrayVariable = new Variable(); 163 Variable bagArrayVariable = new Variable();
164 // disable warning on l1, don't see how we can 164// disable warning: don't see how we can code this differently short
165 // code this differently 165// of rewriting the whole thing
166 #pragma warning disable 0168 166#pragma warning disable 0168
167 foreach (bool l1 in resultArray(bagArrayVariable)) 167 foreach (bool l1 in resultArray(bagArrayVariable))
168 { 168 {
169 foreach (bool l2 in YP.unify(Bag, ListPair.make((List<object>)bagArrayVariable.getValue()))) 169 foreach (bool l2 in YP.unify(Bag, ListPair.make((List<object>)bagArrayVariable.getValue())))
170 yield return false; 170 yield return false;
171 } 171 }
172 #pragma warning restore 0168 172#pragma warning restore 0168
173 } 173 }
174 174
175 /// <summary> 175 /// <summary>
@@ -181,9 +181,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
181 public IEnumerable<bool> resultSet(object Bag) 181 public IEnumerable<bool> resultSet(object Bag)
182 { 182 {
183 Variable bagArrayVariable = new Variable(); 183 Variable bagArrayVariable = new Variable();
184 // disable warning on l1, don't see how we can 184// disable warning: don't see how we can code this differently short
185 // code this differently 185// of rewriting the whole thing
186 #pragma warning disable 0168 186#pragma warning disable 0168
187 foreach (bool l1 in resultArray(bagArrayVariable)) 187 foreach (bool l1 in resultArray(bagArrayVariable))
188 { 188 {
189 List<object> bagArray = (List<object>)bagArrayVariable.getValue(); 189 List<object> bagArray = (List<object>)bagArrayVariable.getValue();
@@ -191,19 +191,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
191 foreach (bool l2 in YP.unify(Bag, ListPair.makeWithoutRepeatedTerms(bagArray))) 191 foreach (bool l2 in YP.unify(Bag, ListPair.makeWithoutRepeatedTerms(bagArray)))
192 yield return false; 192 yield return false;
193 } 193 }
194 #pragma warning restore 0168 194#pragma warning restore 0168
195 } 195 }
196 196
197 public static IEnumerable<bool> bagofArray 197 public static IEnumerable<bool> bagofArray
198 (object Template, object Goal, IEnumerable<bool> goalIterator, Variable bagArrayVariable) 198 (object Template, object Goal, IEnumerable<bool> goalIterator, Variable bagArrayVariable)
199 { 199 {
200 BagofAnswers bagOfAnswers = new BagofAnswers(Template, Goal); 200 BagofAnswers bagOfAnswers = new BagofAnswers(Template, Goal);
201 // disable warning on l1, don't see how we can 201// disable warning: don't see how we can code this differently short
202 // code this differently 202// of rewriting the whole thing
203 #pragma warning disable 0168 203#pragma warning disable 0168
204 foreach (bool l1 in goalIterator) 204 foreach (bool l1 in goalIterator)
205 bagOfAnswers.add(); 205 bagOfAnswers.add();
206 #pragma warning restore 0168 206#pragma warning restore 0168
207 return bagOfAnswers.resultArray(bagArrayVariable); 207 return bagOfAnswers.resultArray(bagArrayVariable);
208 } 208 }
209 209
@@ -211,12 +211,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
211 (object Template, object Goal, IEnumerable<bool> goalIterator, object Bag) 211 (object Template, object Goal, IEnumerable<bool> goalIterator, object Bag)
212 { 212 {
213 BagofAnswers bagOfAnswers = new BagofAnswers(Template, Goal); 213 BagofAnswers bagOfAnswers = new BagofAnswers(Template, Goal);
214 // disable warning on l1, don't see how we can 214// disable warning: don't see how we can code this differently short
215 // code this differently 215// of rewriting the whole thing
216 #pragma warning disable 0168 216#pragma warning disable 0168
217 foreach (bool l1 in goalIterator) 217 foreach (bool l1 in goalIterator)
218 bagOfAnswers.add(); 218 bagOfAnswers.add();
219 #pragma warning restore 0168 219#pragma warning restore 0168
220 return bagOfAnswers.result(Bag); 220 return bagOfAnswers.result(Bag);
221 } 221 }
222 222
@@ -224,12 +224,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
224 (object Template, object Goal, IEnumerable<bool> goalIterator, object Bag) 224 (object Template, object Goal, IEnumerable<bool> goalIterator, object Bag)
225 { 225 {
226 BagofAnswers bagOfAnswers = new BagofAnswers(Template, Goal); 226 BagofAnswers bagOfAnswers = new BagofAnswers(Template, Goal);
227 // disable warning on l1, don't see how we can 227// disable warning: don't see how we can code this differently short
228 // code this differently 228// of rewriting the whole thing
229 #pragma warning disable 0168 229#pragma warning disable 0168
230 foreach (bool l1 in goalIterator) 230 foreach (bool l1 in goalIterator)
231 bagOfAnswers.add(); 231 bagOfAnswers.add();
232 #pragma warning restore 0168 232#pragma warning restore 0168
233 return bagOfAnswers.resultSet(Bag); 233 return bagOfAnswers.resultSet(Bag);
234 } 234 }
235 235
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor2.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor2.cs
index 7e4f27d..4ae325e 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor2.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor2.cs
@@ -59,25 +59,25 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
59 Functor2 argFunctor = (Functor2)arg; 59 Functor2 argFunctor = (Functor2)arg;
60 if (_name.Equals(argFunctor._name)) 60 if (_name.Equals(argFunctor._name))
61 { 61 {
62 // disable warning on l1, don't see how we can 62// disable warning: don't see how we can code this differently short
63 // code this differently 63// of rewriting the whole thing
64 #pragma warning disable 0168 64#pragma warning disable 0168
65 foreach (bool l1 in YP.unify(_arg1, argFunctor._arg1)) 65 foreach (bool l1 in YP.unify(_arg1, argFunctor._arg1))
66 { 66 {
67 foreach (bool l2 in YP.unify(_arg2, argFunctor._arg2)) 67 foreach (bool l2 in YP.unify(_arg2, argFunctor._arg2))
68 yield return false; 68 yield return false;
69 } 69 }
70 #pragma warning restore 0168 70#pragma warning restore 0168
71 } 71 }
72 } 72 }
73 else if (arg is Variable) 73 else if (arg is Variable)
74 { 74 {
75 // disable warning on l1, don't see how we can 75// disable warning: don't see how we can code this differently short
76 // code this differently 76// of rewriting the whole thing
77 #pragma warning disable 0168 77#pragma warning disable 0168
78 foreach (bool l1 in ((Variable)arg).unify(this)) 78 foreach (bool l1 in ((Variable)arg).unify(this))
79 yield return false; 79 yield return false;
80 #pragma warning restore 0168 80#pragma warning restore 0168
81 } 81 }
82 } 82 }
83 83
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor3.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor3.cs
index 6ef8327..907bfca 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor3.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Functor3.cs
@@ -61,9 +61,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
61 Functor3 argFunctor = (Functor3)arg; 61 Functor3 argFunctor = (Functor3)arg;
62 if (_name.Equals(argFunctor._name)) 62 if (_name.Equals(argFunctor._name))
63 { 63 {
64 // disable warning on l1, l2, l3 don't see how we can 64// disable warning: don't see how we can code this differently short
65 // code this differently 65// of rewriting the whole thing
66 #pragma warning disable 0168 66#pragma warning disable 0168
67 foreach (bool l1 in YP.unify(_arg1, argFunctor._arg1)) 67 foreach (bool l1 in YP.unify(_arg1, argFunctor._arg1))
68 { 68 {
69 foreach (bool l2 in YP.unify(_arg2, argFunctor._arg2)) 69 foreach (bool l2 in YP.unify(_arg2, argFunctor._arg2))
@@ -72,17 +72,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
72 yield return false; 72 yield return false;
73 } 73 }
74 } 74 }
75 #pragma warning restore 0168 75#pragma warning restore 0168
76 } 76 }
77 } 77 }
78 else if (arg is Variable) 78 else if (arg is Variable)
79 { 79 {
80 // disable warning on l1, don't see how we can 80// disable warning: don't see how we can code this differently short
81 // code this differently 81// of rewriting the whole thing
82 #pragma warning disable 0168 82#pragma warning disable 0168
83 foreach (bool l1 in ((Variable)arg).unify(this)) 83 foreach (bool l1 in ((Variable)arg).unify(this))
84 yield return false; 84 yield return false;
85 #pragma warning restore 0168 85#pragma warning restore 0168
86 } 86 }
87 } 87 }
88 88
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Parser.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Parser.cs
index e9dd8f1..3d86905 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Parser.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Parser.cs
@@ -44,9 +44,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
44 yield return false; 44 yield return false;
45 } 45 }
46 46
47 // disable warning about unused variables: the following code 47// disable warning: don't see how we can code this differently short
48 // is infested with it. 48// of rewriting the whole thing
49 #pragma warning disable 0168, 0219 49#pragma warning disable 0168, 0219
50 50
51 // Debug: Hand-modify this central predicate to do tail recursion. 51 // Debug: Hand-modify this central predicate to do tail recursion.
52 public static IEnumerable<bool> read_tokens(object arg1, object arg2, object arg3) 52 public static IEnumerable<bool> read_tokens(object arg1, object arg2, object arg3)
@@ -4457,6 +4457,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
4457 { } 4457 { }
4458 } 4458 }
4459 } 4459 }
4460 #pragma warning restore 0168 4460#pragma warning restore 0168
4461 } 4461 }
4462} 4462}
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Variable.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Variable.cs
index 8e2aa7e..f68a941 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Variable.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/Variable.cs
@@ -92,12 +92,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
92 } 92 }
93 else 93 else
94 { 94 {
95 // disable warning on l1, don't see how we can 95// disable warning: don't see how we can code this differently short
96 // code this differently 96// of rewriting the whole thing
97 #pragma warning disable 0168 97#pragma warning disable 0168
98 foreach (bool l1 in YP.unify(this, arg)) 98 foreach (bool l1 in YP.unify(this, arg))
99 yield return false; 99 yield return false;
100 #pragma warning restore 0168 100#pragma warning restore 0168
101 } 101 }
102 } 102 }
103 103
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/YP.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/YP.cs
index f0e8147..c212fb8 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/YP.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/YP.cs
@@ -572,9 +572,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
572 572
573 Variable Name = new Variable(); 573 Variable Name = new Variable();
574 Variable ArgList = new Variable(); 574 Variable ArgList = new Variable();
575 // disable warning on l1, don't see how we can 575// disable warning: don't see how we can code this differently short
576 // code this differently 576// of rewriting the whole thing
577 #pragma warning disable 0168 577#pragma warning disable 0168
578 foreach (bool l1 in new ListPair(Name, ArgList).unify(List)) 578 foreach (bool l1 in new ListPair(Name, ArgList).unify(List))
579 { 579 {
580 object[] args = ListPair.toArray(ArgList); 580 object[] args = ListPair.toArray(ArgList);
@@ -588,7 +588,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
588 588
589 return YP.unify(Term, Functor.make((Atom)YP.getValue(Name), args)); 589 return YP.unify(Term, Functor.make((Atom)YP.getValue(Name), args));
590 } 590 }
591 #pragma warning restore 0168 591#pragma warning restore 0168
592 592
593 return YP.fail(); 593 return YP.fail();
594 } 594 }
@@ -601,15 +601,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
601 601
602 if (!(Term is Variable)) 602 if (!(Term is Variable))
603 { 603 {
604 // disable warning on l1, don't see how we can 604// disable warning: don't see how we can code this differently short
605 // code this differently 605// of rewriting the whole thing
606 #pragma warning disable 0168 606#pragma warning disable 0168
607 foreach (bool l1 in YP.unify(FunctorName, getFunctorName(Term))) 607 foreach (bool l1 in YP.unify(FunctorName, getFunctorName(Term)))
608 { 608 {
609 foreach (bool l2 in YP.unify(Arity, getFunctorArgs(Term).Length)) 609 foreach (bool l2 in YP.unify(Arity, getFunctorArgs(Term).Length))
610 yield return false; 610 yield return false;
611 } 611 }
612 #pragma warning restore 0168 612#pragma warning restore 0168
613 } 613 }
614 else 614 else
615 throw new NotImplementedException("Debug: must finish functor/3"); 615 throw new NotImplementedException("Debug: must finish functor/3");
@@ -629,12 +629,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
629 if (argNumberInt >= 1 && argNumberInt <= termArgs.Length) 629 if (argNumberInt >= 1 && argNumberInt <= termArgs.Length)
630 { 630 {
631 // The first ArgNumber is at 1, not 0. 631 // The first ArgNumber is at 1, not 0.
632 // disable warning on l1, don't see how we can 632// disable warning: don't see how we can code this differently short
633 // code this differently 633// of rewriting the whole thing
634 #pragma warning disable 0168 634#pragma warning disable 0168
635 foreach (bool l1 in YP.unify(Value, termArgs[argNumberInt - 1])) 635 foreach (bool l1 in YP.unify(Value, termArgs[argNumberInt - 1]))
636 yield return false; 636 yield return false;
637 #pragma warning restore 0168 637#pragma warning restore 0168
638 } 638 }
639 } 639 }
640 } 640 }
@@ -826,12 +826,12 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
826 object[] args = new object[] { Priority, Specifier, Operator }; 826 object[] args = new object[] { Priority, Specifier, Operator };
827 foreach (object[] answer in _operatorTable) 827 foreach (object[] answer in _operatorTable)
828 { 828 {
829 // disable warning on l1, don't see how we can 829// disable warning: don't see how we can code this differently short
830 // code this differently 830// of rewriting the whole thing
831 #pragma warning disable 0168 831#pragma warning disable 0168
832 foreach (bool l1 in YP.unifyArrays(args, answer)) 832 foreach (bool l1 in YP.unifyArrays(args, answer))
833 yield return false; 833 yield return false;
834 #pragma warning restore 0168 834#pragma warning restore 0168
835 } 835 }
836 } 836 }
837 837
@@ -863,16 +863,16 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
863 int afterInt = atomAtom._name.Length - (beforeInt + lengthInt); 863 int afterInt = atomAtom._name.Length - (beforeInt + lengthInt);
864 if (afterInt >= 0) 864 if (afterInt >= 0)
865 { 865 {
866 // disable warning on l1, don't see how we can 866// disable warning: don't see how we can code this differently short
867 // code this differently 867// of rewriting the whole thing
868 #pragma warning disable 0168 868#pragma warning disable 0168
869 foreach (bool l1 in YP.unify(After, afterInt)) 869 foreach (bool l1 in YP.unify(After, afterInt))
870 { 870 {
871 foreach (bool l2 in YP.unify 871 foreach (bool l2 in YP.unify
872 (Sub_atom, Atom.a(atomAtom._name.Substring(beforeInt, lengthInt)))) 872 (Sub_atom, Atom.a(atomAtom._name.Substring(beforeInt, lengthInt))))
873 yield return false; 873 yield return false;
874 } 874 }
875 #pragma warning restore 0168 875#pragma warning restore 0168
876 } 876 }
877 } 877 }
878 878
@@ -1221,13 +1221,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
1221 if (arity == 2 && (name == Atom.a(",") || name == Atom.a(";") || name == Atom.DOT)) 1221 if (arity == 2 && (name == Atom.a(",") || name == Atom.a(";") || name == Atom.DOT))
1222 return false; 1222 return false;
1223 // Use the same mapping to static predicates in YP as the compiler. 1223 // Use the same mapping to static predicates in YP as the compiler.
1224 // disable warning on l1, don't see how we can 1224// disable warning: don't see how we can code this differently short
1225 // code this differently 1225// of rewriting the whole thing
1226 #pragma warning disable 0168 1226#pragma warning disable 0168
1227 foreach (bool l1 in YPCompiler.functorCallYPFunctionName(name, arity, new Variable())) 1227 foreach (bool l1 in YPCompiler.functorCallYPFunctionName(name, arity, new Variable()))
1228 return false; 1228 return false;
1229 // Debug: Do we need to check if name._module is null? 1229 // Debug: Do we need to check if name._module is null?
1230 #pragma warning restore 0168 1230#pragma warning restore 0168
1231 return true; 1231 return true;
1232 } 1232 }
1233 1233
@@ -1366,13 +1366,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
1366 1366
1367 foreach (NameArity key in _predicatesStore.Keys) 1367 foreach (NameArity key in _predicatesStore.Keys)
1368 { 1368 {
1369 // disable warning on l1, don't see how we can 1369// disable warning: don't see how we can code this differently short
1370 // code this differently 1370// of rewriting the whole thing
1371 #pragma warning disable 0168 1371#pragma warning disable 0168
1372 foreach (bool l1 in YP.unify 1372 foreach (bool l1 in YP.unify
1373 (new Functor2(Atom.SLASH, key._name, key._arity), NameSlashArity)) 1373 (new Functor2(Atom.SLASH, key._name, key._arity), NameSlashArity))
1374 yield return false; 1374 yield return false;
1375 #pragma warning restore 0168 1375#pragma warning restore 0168
1376 } 1376 }
1377 } 1377 }
1378 1378
@@ -1628,15 +1628,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
1628 if (_exception != null) 1628 if (_exception != null)
1629 { 1629 {
1630 bool didUnify = false; 1630 bool didUnify = false;
1631 // disable warning on l1, don't see how we can 1631// disable warning: don't see how we can code this differently short
1632 // code this differently 1632// of rewriting the whole thing
1633 #pragma warning disable 0168 1633#pragma warning disable 0168
1634 foreach (bool l1 in YP.unify(_exception._term, Catcher)) 1634 foreach (bool l1 in YP.unify(_exception._term, Catcher))
1635 { 1635 {
1636 didUnify = true; 1636 didUnify = true;
1637 yield return false; 1637 yield return false;
1638 } 1638 }
1639 #pragma warning restore 0168 1639#pragma warning restore 0168
1640 1640
1641 if (!didUnify) 1641 if (!didUnify)
1642 throw _exception; 1642 throw _exception;
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/YPCompiler.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/YPCompiler.cs
index d6115ce..96f2b89 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/YPCompiler.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/YieldProlog/YPCompiler.cs
@@ -209,9 +209,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
209 object[] functorArgs = YP.getFunctorArgs(Term); 209 object[] functorArgs = YP.getFunctorArgs(Term);
210 210
211 Variable pred = new Variable(); 211 Variable pred = new Variable();
212 // disable warning on l1, don't see how we can 212// disable warning: don't see how we can code this differently short
213 // code this differently 213// of rewriting the whole thing
214 #pragma warning disable 0168 214#pragma warning disable 0168
215 foreach (bool l1 in ((CompilerState)State)._pred.match 215 foreach (bool l1 in ((CompilerState)State)._pred.match
216 (new object[] { functorName, functorArgs.Length, pred, Atom.a("det") })) 216 (new object[] { functorName, functorArgs.Length, pred, Atom.a("det") }))
217 { 217 {
@@ -220,7 +220,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
220 return true; 220 return true;
221 } 221 }
222 } 222 }
223 #pragma warning restore 0168 223#pragma warning restore 0168
224 224
225 return false; 225 return false;
226 } 226 }
@@ -232,9 +232,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
232 object[] functorArgs = YP.getFunctorArgs(Term); 232 object[] functorArgs = YP.getFunctorArgs(Term);
233 233
234 Variable pred = new Variable(); 234 Variable pred = new Variable();
235 // disable warning on l1, don't see how we can 235// disable warning: don't see how we can code this differently short
236 // code this differently 236// of rewriting the whole thing
237 #pragma warning disable 0168 237#pragma warning disable 0168
238 foreach (bool l1 in ((CompilerState)State)._pred.match 238 foreach (bool l1 in ((CompilerState)State)._pred.match
239 (new object[] { functorName, functorArgs.Length, pred, Atom.a("semidet") })) 239 (new object[] { functorName, functorArgs.Length, pred, Atom.a("semidet") }))
240 { 240 {
@@ -243,7 +243,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
243 return true; 243 return true;
244 } 244 }
245 } 245 }
246 #pragma warning restore 0168 246#pragma warning restore 0168
247 247
248 return false; 248 return false;
249 } 249 }
@@ -285,7 +285,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.YieldProlog
285 285
286 // disable warning unused variables, the following code is 286 // disable warning unused variables, the following code is
287 // infested with it. 287 // infested with it.
288 #pragma warning disable 0168, 0219 288#pragma warning disable 0168, 0219
289 289
290 /// <summary> 290 /// <summary>
291 /// Use makeFunctionPseudoCode, convertFunctionCSharp and compileAnonymousFunction 291 /// Use makeFunctionPseudoCode, convertFunctionCSharp and compileAnonymousFunction
diff --git a/OpenSim/Region/ScriptEngine/Shared/CodeTools/YP2CSConverter.cs b/OpenSim/Region/ScriptEngine/Shared/CodeTools/YP2CSConverter.cs
index 69f9fdc..52c8251 100644
--- a/OpenSim/Region/ScriptEngine/Shared/CodeTools/YP2CSConverter.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/CodeTools/YP2CSConverter.cs
@@ -69,9 +69,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools
69 YP.tell(myCS_SW); 69 YP.tell(myCS_SW);
70 70
71 //Console.WriteLine("Mycode\n ===================================\n" + myCode+"\n"); 71 //Console.WriteLine("Mycode\n ===================================\n" + myCode+"\n");
72 // disable warning on l1, don't see how we can 72
73 // code this differently 73// disable warning: don't see how we can code this differently short
74 #pragma warning disable 0168 74// of rewriting the whole thing
75#pragma warning disable 0168
75 foreach (bool l1 in Parser.parseInput(TermList)) 76 foreach (bool l1 in Parser.parseInput(TermList))
76 { 77 {
77 foreach (bool l2 in YPCompiler.makeFunctionPseudoCode(TermList, FunctionCode)) 78 foreach (bool l2 in YPCompiler.makeFunctionPseudoCode(TermList, FunctionCode))
@@ -84,7 +85,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.CodeTools
84 //YPCompiler.convertStringCodesCSharp(VFC); 85 //YPCompiler.convertStringCodesCSharp(VFC);
85 } 86 }
86 } 87 }
87 #pragma warning restore 0168 88#pragma warning restore 0168
88 YP.seen(); 89 YP.seen();
89 myCS_SW.Close(); 90 myCS_SW.Close();
90 YP.told(); 91 YP.told();
diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
index cf84237..7f539f3 100644
--- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
+++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs
@@ -59,6 +59,9 @@ namespace OpenSim.Region.ScriptEngine.XEngine
59 private Scene m_Scene; 59 private Scene m_Scene;
60 private IConfig m_ScriptConfig; 60 private IConfig m_ScriptConfig;
61 private Compiler m_Compiler; 61 private Compiler m_Compiler;
62
63// disable warning: need to keep a reference to XEngine.EventManager
64// alive to avoid it being garbage collected
62#pragma warning disable 414 65#pragma warning disable 414
63 private EventManager m_EventManager; 66 private EventManager m_EventManager;
64#pragma warning restore 414 67#pragma warning restore 414