From b089fc559a5dc527ed5e0422e82abf3b1dd5f1b2 Mon Sep 17 00:00:00 2001 From: Don Kjer Date: Fri, 28 Sep 2007 23:32:53 +0000 Subject: EFFECTIVE MERGE: svn merge -r 68999:69916 svn+ssh://svn.lindenlab.com/svn/linden/branches/maintenance into release ** This should be the last merge from branches/maintenance. All future merges will be from new maintenance-# branches off release ** ACTUAL MERGE: svn merge -r70609:70621 svn+ssh://svn/svn/linden/branches/maintenance-0-qa-r70556 RELATED MERGE: svn merge -r69921:70316 svn+ssh://svn/svn/linden/branches/maintenance-0-qa --- indra/newview/llselectmgr.cpp | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) (limited to 'indra/newview/llselectmgr.cpp') diff --git a/indra/newview/llselectmgr.cpp b/indra/newview/llselectmgr.cpp index 0fbcd93b0b..5fbe3f0c8e 100644 --- a/indra/newview/llselectmgr.cpp +++ b/indra/newview/llselectmgr.cpp @@ -4783,19 +4783,17 @@ void LLSelectMgr::updateSilhouettes() iter != roots.end(); iter++) { LLViewerObject* objectp = *iter; - LLSelectNode* rect_select_node = new LLSelectNode(objectp, TRUE); - rect_select_node->selectAllTEs(TRUE); + LLSelectNode* rect_select_root_node = new LLSelectNode(objectp, TRUE); + rect_select_root_node->selectAllTEs(TRUE); if (!canSelectObject(objectp)) { continue; } - mHighlightedObjects->addNode(rect_select_node); - if (!select_linked_set) { - rect_select_node->mIndividualSelection = TRUE; + rect_select_root_node->mIndividualSelection = TRUE; } else { @@ -4808,11 +4806,14 @@ void LLSelectMgr::updateSilhouettes() continue; } - rect_select_node = new LLSelectNode(objectp->mChildList[i], TRUE); + LLSelectNode* rect_select_node = new LLSelectNode(objectp->mChildList[i], TRUE); rect_select_node->selectAllTEs(TRUE); - mHighlightedObjects->addNode(rect_select_node); + mHighlightedObjects->addNodeAtEnd(rect_select_node); } } + + // Add the root last, to preserve order for link operations. + mHighlightedObjects->addNodeAtEnd(rect_select_root_node); } num_sils_genned = 0; -- cgit v1.2.3