aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/lltexturefetch.cpp
diff options
context:
space:
mode:
authorthickbrick2011-02-06 23:42:37 +0200
committerthickbrick2011-02-06 23:42:37 +0200
commit21d0848f94c64b20fb7ceedd4ae7b71012a834d7 (patch)
tree810697e32185af876c1a74432f42de66877deb9c /linden/indra/newview/lltexturefetch.cpp
parentMerge remote branch 'origin/weekly' into weekly (diff)
downloadmeta-impy-21d0848f94c64b20fb7ceedd4ae7b71012a834d7.zip
meta-impy-21d0848f94c64b20fb7ceedd4ae7b71012a834d7.tar.gz
meta-impy-21d0848f94c64b20fb7ceedd4ae7b71012a834d7.tar.bz2
meta-impy-21d0848f94c64b20fb7ceedd4ae7b71012a834d7.tar.xz
Fix #778: Textures get stuck half fetched.
Make sure partial textures are cached as partial, so that they will finish fetching in consequent sessions. This is a rare case, but does happen. Backported from viewer2.
Diffstat (limited to 'linden/indra/newview/lltexturefetch.cpp')
-rw-r--r--linden/indra/newview/lltexturefetch.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/linden/indra/newview/lltexturefetch.cpp b/linden/indra/newview/lltexturefetch.cpp
index 83a54e4..4b1a9cb 100644
--- a/linden/indra/newview/lltexturefetch.cpp
+++ b/linden/indra/newview/lltexturefetch.cpp
@@ -1116,6 +1116,17 @@ bool LLTextureFetchWorker::doWork(S32 param)
1116 return false; 1116 return false;
1117 } 1117 }
1118 S32 datasize = mFormattedImage->getDataSize(); 1118 S32 datasize = mFormattedImage->getDataSize();
1119 if(mFileSize < datasize)//This could happen when http fetching and sim fetching mixed.
1120 {
1121 if(mHaveAllData)
1122 {
1123 mFileSize = datasize ;
1124 }
1125 else
1126 {
1127 mFileSize = datasize + 1 ; //flag not fully loaded.
1128 }
1129 }
1119 llassert_always(datasize); 1130 llassert_always(datasize);
1120 setPriority(LLWorkerThread::PRIORITY_LOW | mWorkPriority); // Set priority first since Responder may change it 1131 setPriority(LLWorkerThread::PRIORITY_LOW | mWorkPriority); // Set priority first since Responder may change it
1121 U32 cache_priority = mWorkPriority; 1132 U32 cache_priority = mWorkPriority;