diff options
| author | Xiaohong Bao <bao@lindenlab.com> | 2012-12-12 11:00:24 -0700 | 
|---|---|---|
| committer | Xiaohong Bao <bao@lindenlab.com> | 2012-12-12 11:00:24 -0700 | 
| commit | f2bf13b87768c97ec6a36a183013413bf4b905f0 (patch) | |
| tree | caca2a629fa17db34f0190078590df2b92d89526 | |
| parent | 0270ce079c2090cd25244516648ac1691db00a0d (diff) | |
fix for SH-3622: crash on LLViewerRegion::updateVisibleEntries
| -rw-r--r-- | indra/newview/llviewerregion.cpp | 20 | 
1 files changed, 10 insertions, 10 deletions
| diff --git a/indra/newview/llviewerregion.cpp b/indra/newview/llviewerregion.cpp index e275b44e92..ab692308b0 100644 --- a/indra/newview/llviewerregion.cpp +++ b/indra/newview/llviewerregion.cpp @@ -777,25 +777,25 @@ void LLViewerRegion::killCacheEntry(LLVOCacheEntry* entry)  		return;  	} -	//1, remove from active list and waiting list +	//remove from active list and waiting list  	if(entry->isState(LLVOCacheEntry::ACTIVE))  	{  		mImpl->mActiveSet.erase(entry);  	} -	else if(entry->isState(LLVOCacheEntry::WAITING)) -	{ -		mImpl->mWaitingSet.erase(entry); -	} -	else if(entry->isState(LLVOCacheEntry::IN_QUEUE)) -	{ -		mImpl->mVisibleEntries.erase(entry); -	} -	else if(entry->isState(LLVOCacheEntry::INACTIVE)) +	else  	{ +		if(entry->isState(LLVOCacheEntry::WAITING)) +		{ +			mImpl->mWaitingSet.erase(entry); +		} +		  		//remove from mVOCachePartition  		removeFromVOCacheTree(entry);  	} +	//remove from the forced visible list +	mImpl->mVisibleEntries.erase(entry); +  	//kill LLViewerObject if exists  	//this should be done by the rendering pipeline automatically. | 
