diff options
| -rw-r--r-- | indra/newview/llviewertexture.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llviewertexturelist.cpp | 13 | 
2 files changed, 10 insertions, 5 deletions
| diff --git a/indra/newview/llviewertexture.cpp b/indra/newview/llviewertexture.cpp index a6f4b10540..ad7e50b788 100644 --- a/indra/newview/llviewertexture.cpp +++ b/indra/newview/llviewertexture.cpp @@ -1842,8 +1842,6 @@ F32 LLViewerFetchedTexture::maxDecodePriority()  void LLViewerFetchedTexture::setDecodePriority(F32 priority)  { -	llassert(!mInImageList);  -      	mDecodePriority = priority;  	if(mDecodePriority < F_ALMOST_ZERO) diff --git a/indra/newview/llviewertexturelist.cpp b/indra/newview/llviewertexturelist.cpp index d95a9cd13b..c8082d60bd 100644 --- a/indra/newview/llviewertexturelist.cpp +++ b/indra/newview/llviewertexturelist.cpp @@ -503,6 +503,7 @@ LLViewerFetchedTexture *LLViewerTextureList::findImage(const LLUUID &image_id)  void LLViewerTextureList::addImageToList(LLViewerFetchedTexture *image)  { +	assert_main_thread();  	llassert_always(mInitialized) ;  	llassert(image);  	if (image->isInImageList()) @@ -519,6 +520,7 @@ void LLViewerTextureList::addImageToList(LLViewerFetchedTexture *image)  void LLViewerTextureList::removeImageFromList(LLViewerFetchedTexture *image)  { +	assert_main_thread();  	llassert_always(mInitialized) ;  	llassert(image);  	if (!image->isInImageList()) @@ -763,7 +765,12 @@ void LLViewerTextureList::updateImagesDecodePriorities()  					imagep->setInactive() ;										  				}  			} -			 + +			if (!imagep->isInImageList()) +			{ +				continue; +			} +  			imagep->processTextureStats();  			F32 old_priority = imagep->getDecodePriority();  			F32 old_priority_test = llmax(old_priority, 0.0f); @@ -773,9 +780,9 @@ void LLViewerTextureList::updateImagesDecodePriorities()  			if ((decode_priority_test < old_priority_test * .8f) ||  				(decode_priority_test > old_priority_test * 1.25f))  			{ -				removeImageFromList(imagep); +				mImageList.erase(imagep) ;  				imagep->setDecodePriority(decode_priority); -				addImageToList(imagep); +				mImageList.insert(imagep);  			}  			update_counter--;  		} | 
