diff options
Diffstat (limited to 'OpenSim/Region/ScriptEngine')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 11 | ||||
-rwxr-xr-x | OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | 12 |
2 files changed, 11 insertions, 12 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 66cb30c..85837e4 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -100,11 +100,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
100 | 100 | ||
101 | protected IScriptEngine m_ScriptEngine; | 101 | protected IScriptEngine m_ScriptEngine; |
102 | protected SceneObjectPart m_host; | 102 | protected SceneObjectPart m_host; |
103 | 103 | ||
104 | /// <summary> | ||
105 | /// Used for script sleeps when we are using co-operative script termination. | ||
106 | /// </summary> | ||
107 | /// <remarks>null if co-operative script termination is not active</remarks> | ||
108 | /// <summary> | 104 | /// <summary> |
109 | /// The item that hosts this script | 105 | /// The item that hosts this script |
110 | /// </summary> | 106 | /// </summary> |
@@ -1641,12 +1637,15 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1641 | 1637 | ||
1642 | foreach (SceneObjectPart part in group.Parts) | 1638 | foreach (SceneObjectPart part in group.Parts) |
1643 | { | 1639 | { |
1640 | if (part.PhysicsShapeType == (byte)PhysicsShapeType.None) | ||
1641 | continue; | ||
1642 | |||
1644 | if (part.Scale.X > World.m_maxPhys || part.Scale.Y > World.m_maxPhys || part.Scale.Z > World.m_maxPhys) | 1643 | if (part.Scale.X > World.m_maxPhys || part.Scale.Y > World.m_maxPhys || part.Scale.Z > World.m_maxPhys) |
1645 | { | 1644 | { |
1646 | allow = false; | 1645 | allow = false; |
1647 | break; | 1646 | break; |
1648 | } | 1647 | } |
1649 | if (checkShape && part.PhysicsShapeType != (byte)PhysicsShapeType.None) | 1648 | if (checkShape) |
1650 | { | 1649 | { |
1651 | if (--maxprims < 0) | 1650 | if (--maxprims < 0) |
1652 | { | 1651 | { |
diff --git a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs index 3038915..e12f850 100755 --- a/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs +++ b/OpenSim/Region/ScriptEngine/XEngine/XEngine.cs | |||
@@ -110,6 +110,7 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
110 | private int m_ScriptFailCount; // Number of script fails since compile queue was last empty | 110 | private int m_ScriptFailCount; // Number of script fails since compile queue was last empty |
111 | private string m_ScriptErrorMessage; | 111 | private string m_ScriptErrorMessage; |
112 | private bool m_AppDomainLoading; | 112 | private bool m_AppDomainLoading; |
113 | private bool m_CompactMemOnLoad; | ||
113 | private Dictionary<UUID,ArrayList> m_ScriptErrors = | 114 | private Dictionary<UUID,ArrayList> m_ScriptErrors = |
114 | new Dictionary<UUID,ArrayList>(); | 115 | new Dictionary<UUID,ArrayList>(); |
115 | 116 | ||
@@ -301,8 +302,8 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
301 | m_MaxScriptQueue = m_ScriptConfig.GetInt("MaxScriptEventQueue",300); | 302 | m_MaxScriptQueue = m_ScriptConfig.GetInt("MaxScriptEventQueue",300); |
302 | m_StackSize = m_ScriptConfig.GetInt("ThreadStackSize", 262144); | 303 | m_StackSize = m_ScriptConfig.GetInt("ThreadStackSize", 262144); |
303 | m_SleepTime = m_ScriptConfig.GetInt("MaintenanceInterval", 10) * 1000; | 304 | m_SleepTime = m_ScriptConfig.GetInt("MaintenanceInterval", 10) * 1000; |
304 | m_AppDomainLoading = m_ScriptConfig.GetBoolean("AppDomainLoading", true); | 305 | m_AppDomainLoading = m_ScriptConfig.GetBoolean("AppDomainLoading", false); |
305 | 306 | m_CompactMemOnLoad = m_ScriptConfig.GetBoolean("CompactMemOnLoad", false); | |
306 | m_EventLimit = m_ScriptConfig.GetInt("EventLimit", 30); | 307 | m_EventLimit = m_ScriptConfig.GetInt("EventLimit", 30); |
307 | m_KillTimedOutScripts = m_ScriptConfig.GetBoolean("KillTimedOutScripts", false); | 308 | m_KillTimedOutScripts = m_ScriptConfig.GetBoolean("KillTimedOutScripts", false); |
308 | m_SaveTime = m_ScriptConfig.GetInt("SaveInterval", 120) * 1000; | 309 | m_SaveTime = m_ScriptConfig.GetInt("SaveInterval", 120) * 1000; |
@@ -1278,10 +1279,9 @@ namespace OpenSim.Region.ScriptEngine.XEngine | |||
1278 | } | 1279 | } |
1279 | } | 1280 | } |
1280 | 1281 | ||
1281 | // do not load a assembly on top of a lot of to release memory | 1282 | // optionaly do not load a assembly on top of a lot of to release memory |
1282 | // also yield a bit | 1283 | // only if logins disable since causes a lot of rubber banding |
1283 | // only if logins disable since causes a lot of rubber banding | 1284 | if(m_CompactMemOnLoad && !m_Scene.LoginsEnabled) |
1284 | if(!m_Scene.LoginsEnabled) | ||
1285 | GC.Collect(2); | 1285 | GC.Collect(2); |
1286 | 1286 | ||
1287 | ScriptInstance instance = null; | 1287 | ScriptInstance instance = null; |