diff options
author | Melanie Thielker | 2008-10-04 14:23:33 +0000 |
---|---|---|
committer | Melanie Thielker | 2008-10-04 14:23:33 +0000 |
commit | 6bf521c7df9e7c151484d50ac01215bf67ec4e6e (patch) | |
tree | 07fff634111b3a757ca322243dbc025cce4e4ca3 | |
parent | Remove type="owner" from the data snapshot. Made the parser choke and there (diff) | |
download | opensim-SC-6bf521c7df9e7c151484d50ac01215bf67ec4e6e.zip opensim-SC-6bf521c7df9e7c151484d50ac01215bf67ec4e6e.tar.gz opensim-SC-6bf521c7df9e7c151484d50ac01215bf67ec4e6e.tar.bz2 opensim-SC-6bf521c7df9e7c151484d50ac01215bf67ec4e6e.tar.xz |
Guard against negative scale set through LSL functions
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Scene.Inventory.cs | 5 | ||||
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs index c139fd9..26f3e1d 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs | |||
@@ -1675,6 +1675,11 @@ namespace OpenSim.Region.Environment.Scenes | |||
1675 | SceneObjectGroup objectGroup = grp; | 1675 | SceneObjectGroup objectGroup = grp; |
1676 | if (objectGroup != null) | 1676 | if (objectGroup != null) |
1677 | { | 1677 | { |
1678 | if (!grp.HasGroupChanged) | ||
1679 | { | ||
1680 | m_log.InfoFormat("Detaching {0} which is unchanged", grp.UUID.ToString()); | ||
1681 | return; | ||
1682 | } | ||
1678 | string sceneObjectXml = objectGroup.ToXmlString(); | 1683 | string sceneObjectXml = objectGroup.ToXmlString(); |
1679 | 1684 | ||
1680 | CachedUserInfo userInfo = | 1685 | CachedUserInfo userInfo = |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 783b1e4..655d85c 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -1115,6 +1115,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
1115 | if (part == null || part.ParentGroup == null || part.ParentGroup.RootPart == null) | 1115 | if (part == null || part.ParentGroup == null || part.ParentGroup.RootPart == null) |
1116 | return; | 1116 | return; |
1117 | 1117 | ||
1118 | if (scale.x < 0.01 || scale.y < 0.01 || scale.z < 0.01) | ||
1119 | return; | ||
1120 | |||
1118 | if (part.ParentGroup.RootPart.PhysActor != null && part.ParentGroup.RootPart.PhysActor.IsPhysical) | 1121 | if (part.ParentGroup.RootPart.PhysActor != null && part.ParentGroup.RootPart.PhysActor.IsPhysical) |
1119 | { | 1122 | { |
1120 | if (scale.x > World.m_maxPhys) | 1123 | if (scale.x > World.m_maxPhys) |