diff options
author | Robert Adams | 2013-01-23 16:23:11 -0800 |
---|---|---|
committer | Robert Adams | 2013-01-23 16:23:11 -0800 |
commit | 5b334079e0b3f93b616259210a12c590143f4f36 (patch) | |
tree | b53e7c58b3c7d1f58c93b1e0818c432f9d273793 /OpenSim/Region/ScriptEngine/Shared/Api | |
parent | BulletSim: pass up and report the real collision penetration. (diff) | |
parent | Merge branch 'master' into cooptermination (diff) | |
download | opensim-SC-5b334079e0b3f93b616259210a12c590143f4f36.zip opensim-SC-5b334079e0b3f93b616259210a12c590143f4f36.tar.gz opensim-SC-5b334079e0b3f93b616259210a12c590143f4f36.tar.bz2 opensim-SC-5b334079e0b3f93b616259210a12c590143f4f36.tar.xz |
Merge branch 'master' of ssh://opensimulator.org/var/git/opensim
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api')
4 files changed, 16 insertions, 6 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 3a7e1c7..63f4800 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -91,7 +91,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
91 | /// Used for script sleeps when we are using co-operative script termination. | 91 | /// Used for script sleeps when we are using co-operative script termination. |
92 | /// </summary> | 92 | /// </summary> |
93 | /// <remarks>null if co-operative script termination is not active</remarks> | 93 | /// <remarks>null if co-operative script termination is not active</remarks> |
94 | EventWaitHandle m_coopSleepHandle; | 94 | WaitHandle m_coopSleepHandle; |
95 | 95 | ||
96 | /// <summary> | 96 | /// <summary> |
97 | /// The item that hosts this script | 97 | /// The item that hosts this script |
@@ -118,7 +118,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
118 | protected ISoundModule m_SoundModule = null; | 118 | protected ISoundModule m_SoundModule = null; |
119 | 119 | ||
120 | public void Initialize( | 120 | public void Initialize( |
121 | IScriptEngine scriptEngine, SceneObjectPart host, TaskInventoryItem item, EventWaitHandle coopSleepHandle) | 121 | IScriptEngine scriptEngine, SceneObjectPart host, TaskInventoryItem item, WaitHandle coopSleepHandle) |
122 | { | 122 | { |
123 | m_ScriptEngine = scriptEngine; | 123 | m_ScriptEngine = scriptEngine; |
124 | m_host = host; | 124 | m_host = host; |
@@ -192,7 +192,17 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
192 | { | 192 | { |
193 | if (m_coopSleepHandle == null) | 193 | if (m_coopSleepHandle == null) |
194 | System.Threading.Thread.Sleep(delay); | 194 | System.Threading.Thread.Sleep(delay); |
195 | else if (m_coopSleepHandle.WaitOne(delay)) | 195 | else |
196 | CheckForCoopTermination(delay); | ||
197 | } | ||
198 | |||
199 | /// <summary> | ||
200 | /// Check for co-operative termination. | ||
201 | /// </summary> | ||
202 | /// <param name='delay'>If called with 0, then just the check is performed with no wait.</param> | ||
203 | protected virtual void CheckForCoopTermination(int delay) | ||
204 | { | ||
205 | if (m_coopSleepHandle.WaitOne(delay)) | ||
196 | throw new ScriptCoopStopException(); | 206 | throw new ScriptCoopStopException(); |
197 | } | 207 | } |
198 | 208 | ||
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LS_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LS_Api.cs index a08ccc8..1d6cb6d 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LS_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LS_Api.cs | |||
@@ -63,7 +63,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
63 | internal IScriptModuleComms m_comms = null; | 63 | internal IScriptModuleComms m_comms = null; |
64 | 64 | ||
65 | public void Initialize( | 65 | public void Initialize( |
66 | IScriptEngine scriptEngine, SceneObjectPart host, TaskInventoryItem item, EventWaitHandle coopSleepHandle) | 66 | IScriptEngine scriptEngine, SceneObjectPart host, TaskInventoryItem item, WaitHandle coopSleepHandle) |
67 | { | 67 | { |
68 | m_ScriptEngine = scriptEngine; | 68 | m_ScriptEngine = scriptEngine; |
69 | m_host = host; | 69 | m_host = host; |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/MOD_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/MOD_Api.cs index 981499e..9045672 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/MOD_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/MOD_Api.cs | |||
@@ -63,7 +63,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
63 | internal IScriptModuleComms m_comms = null; | 63 | internal IScriptModuleComms m_comms = null; |
64 | 64 | ||
65 | public void Initialize( | 65 | public void Initialize( |
66 | IScriptEngine scriptEngine, SceneObjectPart host, TaskInventoryItem item, EventWaitHandle coopSleepHandle) | 66 | IScriptEngine scriptEngine, SceneObjectPart host, TaskInventoryItem item, WaitHandle coopSleepHandle) |
67 | { | 67 | { |
68 | m_ScriptEngine = scriptEngine; | 68 | m_ScriptEngine = scriptEngine; |
69 | m_host = host; | 69 | m_host = host; |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs index 5c0ff1c..1426070 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs | |||
@@ -143,7 +143,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
143 | protected IUrlModule m_UrlModule = null; | 143 | protected IUrlModule m_UrlModule = null; |
144 | 144 | ||
145 | public void Initialize( | 145 | public void Initialize( |
146 | IScriptEngine scriptEngine, SceneObjectPart host, TaskInventoryItem item, EventWaitHandle coopSleepHandle) | 146 | IScriptEngine scriptEngine, SceneObjectPart host, TaskInventoryItem item, WaitHandle coopSleepHandle) |
147 | { | 147 | { |
148 | m_ScriptEngine = scriptEngine; | 148 | m_ScriptEngine = scriptEngine; |
149 | m_host = host; | 149 | m_host = host; |