diff options
Diffstat (limited to 'indra/newview/llselectmgr.cpp')
-rw-r--r-- | indra/newview/llselectmgr.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/indra/newview/llselectmgr.cpp b/indra/newview/llselectmgr.cpp index 50f6d115bd..3ae4ba9107 100644 --- a/indra/newview/llselectmgr.cpp +++ b/indra/newview/llselectmgr.cpp @@ -6343,13 +6343,17 @@ void LLSelectNodeList::addNodeAtEnd(LLSelectNode *nodep) void LLSelectNodeList::removeNode(LLSelectNode *nodep) { - std::list<LLSelectNode*>::iterator iter; - for (iter = begin(); iter != end(); ++iter) + std::list<LLSelectNode*>::iterator iter = begin(); + while(iter != end()) { if ((*iter) == nodep) { mSelectNodeMap.erase(nodep->getObject()); - erase(iter++); + iter = erase(iter); + } + else + { + ++iter; } } } |