diff options
-rw-r--r-- | indra/newview/llvoavatar.cpp | 9 | ||||
-rw-r--r-- | indra/newview/llvoavatar.h | 2 |
2 files changed, 6 insertions, 5 deletions
diff --git a/indra/newview/llvoavatar.cpp b/indra/newview/llvoavatar.cpp index 780b6f81f1..090766e71c 100644 --- a/indra/newview/llvoavatar.cpp +++ b/indra/newview/llvoavatar.cpp @@ -5362,9 +5362,10 @@ void LLVOAvatar::checkTextureLoading() tex->unpauseLoadedCallbacks(&mCallbackTextureList) ; tex->addTextureStats(START_AREA); //jump start the fetching again - if (tex->isFullyLoaded()) + // technically shouldn't need to account for missing, but callback might not have happened yet + if (tex->getDiscardLevel() >= 0 || tex->isMissingAsset()) { - mLoadedCallbackTextures++; // consider it loaded + mLoadedCallbackTextures++; // consider it loaded (we have at least some data) } } } @@ -8204,7 +8205,7 @@ void LLVOAvatar::updateMeshTextures() } baked_img->setLoadedCallback(onBakedTextureLoaded, SWITCH_TO_BAKED_DISCARD, FALSE, FALSE, new LLUUID( mID ), src_callback_list, paused ); - if (!baked_img->isFullyLoaded() && !paused) + if (baked_img->getDiscardLevel() < 0 && !paused) { mLastTexCallbackAddedTime.reset(); } @@ -8605,7 +8606,7 @@ void LLVOAvatar::onFirstTEMessageReceived() LL_DEBUGS("Avatar") << avString() << "layer_baked, setting onInitialBakedTextureLoaded as callback" << LL_ENDL; image->setLoadedCallback( onInitialBakedTextureLoaded, MAX_DISCARD_LEVEL, FALSE, FALSE, new LLUUID( mID ), src_callback_list, paused ); - if (!image->isFullyLoaded() && !paused) + if (image->getDiscardLevel() < 0 && !paused) { mLastTexCallbackAddedTime.reset(); } diff --git a/indra/newview/llvoavatar.h b/indra/newview/llvoavatar.h index 3526142ff5..55d8886daf 100644 --- a/indra/newview/llvoavatar.h +++ b/indra/newview/llvoavatar.h @@ -629,7 +629,7 @@ protected: LLLoadedCallbackEntry::source_callback_list_t mCallbackTextureList ; BOOL mLoadedCallbacksPaused; - S32 mLoadedCallbackTextures; // count of fully loaded textures filled from mCallbackTextureList + S32 mLoadedCallbackTextures; // count of 'loaded' textures filled from mCallbackTextureList LLFrameTimer mLastTexCallbackAddedTime; std::set<LLUUID> mTextureIDs; //-------------------------------------------------------------------- |