diff options
author | Melanie | 2009-12-06 02:00:32 +0000 |
---|---|---|
committer | Melanie | 2009-12-06 02:54:09 +0000 |
commit | 1a695875a72379f8a8a15ef6818167c443b60494 (patch) | |
tree | 0f28bbd55e1444a16ad6873086492145bf58e964 /OpenSim/Region/Framework | |
parent | Change locking to not mix explicit Monitor.* calls with lock() (diff) | |
download | opensim-SC-1a695875a72379f8a8a15ef6818167c443b60494.zip opensim-SC-1a695875a72379f8a8a15ef6818167c443b60494.tar.gz opensim-SC-1a695875a72379f8a8a15ef6818167c443b60494.tar.bz2 opensim-SC-1a695875a72379f8a8a15ef6818167c443b60494.tar.xz |
Skip single prims in unlink selections
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r-- | OpenSim/Region/Framework/Scenes/SceneGraph.cs | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/OpenSim/Region/Framework/Scenes/SceneGraph.cs b/OpenSim/Region/Framework/Scenes/SceneGraph.cs index 4bdc52c..18e7b79 100644 --- a/OpenSim/Region/Framework/Scenes/SceneGraph.cs +++ b/OpenSim/Region/Framework/Scenes/SceneGraph.cs | |||
@@ -1648,14 +1648,17 @@ namespace OpenSim.Region.Framework.Scenes | |||
1648 | SceneObjectPart part = m_parentScene.GetSceneObjectPart(primID); | 1648 | SceneObjectPart part = m_parentScene.GetSceneObjectPart(primID); |
1649 | if (part != null) | 1649 | if (part != null) |
1650 | { | 1650 | { |
1651 | if (part.LinkNum < 2) // Root or single | 1651 | if (part.ParentGroup.Children.Count != 1) // Skip single |
1652 | rootParts.Add(part); | 1652 | { |
1653 | else | 1653 | if (part.LinkNum < 2) // Root |
1654 | childParts.Add(part); | 1654 | rootParts.Add(part); |
1655 | 1655 | else | |
1656 | SceneObjectGroup group = part.ParentGroup; | 1656 | childParts.Add(part); |
1657 | if (!affectedGroups.Contains(group)) | 1657 | |
1658 | affectedGroups.Add(group); | 1658 | SceneObjectGroup group = part.ParentGroup; |
1659 | if (!affectedGroups.Contains(group)) | ||
1660 | affectedGroups.Add(group); | ||
1661 | } | ||
1659 | } | 1662 | } |
1660 | else | 1663 | else |
1661 | { | 1664 | { |