aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorMelanie2009-12-06 02:00:32 +0000
committerMelanie2009-12-06 02:00:32 +0000
commit2fe75a62bec2f06155bf5f05b6f558d028f6b12c (patch)
tree4ae3760b13705c57ba81f04c32ca05027abd8de2
parentChange locking to not mix explicit Monitor.* calls with lock() (diff)
downloadopensim-SC_OLD-2fe75a62bec2f06155bf5f05b6f558d028f6b12c.zip
opensim-SC_OLD-2fe75a62bec2f06155bf5f05b6f558d028f6b12c.tar.gz
opensim-SC_OLD-2fe75a62bec2f06155bf5f05b6f558d028f6b12c.tar.bz2
opensim-SC_OLD-2fe75a62bec2f06155bf5f05b6f558d028f6b12c.tar.xz
Skip single prims in unlink selections
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneGraph.cs19
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 {