MAINT-7610 deadobject list increments incorrectly leading to possible memory overwrite
parent
c3097276be
commit
6302b0a9c7
|
|
@ -1247,9 +1247,11 @@ void LLViewerObjectList::clearDebugText()
|
|||
|
||||
void LLViewerObjectList::cleanupReferences(LLViewerObject *objectp)
|
||||
{
|
||||
bool new_dead_object = true;
|
||||
if (mDeadObjects.find(objectp->mID) != mDeadObjects.end())
|
||||
{
|
||||
LL_INFOS() << "Object " << objectp->mID << " already on dead list!" << LL_ENDL;
|
||||
new_dead_object = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
@ -1286,7 +1288,10 @@ void LLViewerObjectList::cleanupReferences(LLViewerObject *objectp)
|
|||
// Also, not cleaned up
|
||||
removeDrawable(objectp->mDrawable);
|
||||
|
||||
mNumDeadObjects++;
|
||||
if(new_dead_object)
|
||||
{
|
||||
mNumDeadObjects++;
|
||||
}
|
||||
}
|
||||
|
||||
static LLTrace::BlockTimerStatHandle FTM_REMOVE_DRAWABLE("Remove Drawable");
|
||||
|
|
|
|||
Loading…
Reference in New Issue