diff options
author | Dave Parks <davep@lindenlab.com> | 2012-10-31 16:00:56 -0500 |
---|---|---|
committer | Dave Parks <davep@lindenlab.com> | 2012-10-31 16:00:56 -0500 |
commit | 44a024d2f5d4467372d0d2082a83449696b22948 (patch) | |
tree | 665bb7bb4b4c7f147e0e76389d56488c9fc222b5 /indra/newview/llviewerobjectlist.cpp | |
parent | b8e14ad2b250ae8c4cae877035e38c485a841515 (diff) |
MAINT-646 Fix for leak introduced by optimizations.
Diffstat (limited to 'indra/newview/llviewerobjectlist.cpp')
-rw-r--r-- | indra/newview/llviewerobjectlist.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/indra/newview/llviewerobjectlist.cpp b/indra/newview/llviewerobjectlist.cpp index ea20950b36..b433484783 100644 --- a/indra/newview/llviewerobjectlist.cpp +++ b/indra/newview/llviewerobjectlist.cpp @@ -1405,8 +1405,9 @@ void LLViewerObjectList::removeFromActiveList(LLViewerObject* objectp) { mActiveObjects[idx] = mActiveObjects[last_index]; mActiveObjects[idx]->setListIndex(idx); - mActiveObjects.pop_back(); } + + mActiveObjects.pop_back(); } } @@ -1450,6 +1451,12 @@ void LLViewerObjectList::updateActive(LLViewerObject *objectp) objectp->setOnActiveList(FALSE); } } + + //post condition: if object is active, it must be on the active list + llassert(!active || std::find(mActiveObjects.begin(), mActiveObjects.end(), objectp) != mActiveObjects.end()); + + //post condition: if object is not active, it must not be on the active list + llassert(active || std::find(mActiveObjects.begin(), mActiveObjects.end(), objectp) == mActiveObjects.end()); } void LLViewerObjectList::updateObjectCost(LLViewerObject* object) |