summaryrefslogtreecommitdiff
path: root/indra/newview/llviewertexturelist.cpp
diff options
context:
space:
mode:
authorMerov Linden <merov@lindenlab.com>2012-05-08 10:18:03 -0700
committerMerov Linden <merov@lindenlab.com>2012-05-08 10:18:03 -0700
commit60f602d5e12a50623b51b13e097992f79006823f (patch)
tree386e3cf5b25f3292e3ba7c8a9b0524c5bfbb9589 /indra/newview/llviewertexturelist.cpp
parent29da931051202a10ea71db56e47acecae1603a5d (diff)
parentccb86a2a6675b21dda6267d4a850e5a09acbafa4 (diff)
Pull from VirLinden/drano
Diffstat (limited to 'indra/newview/llviewertexturelist.cpp')
-rw-r--r--indra/newview/llviewertexturelist.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/indra/newview/llviewertexturelist.cpp b/indra/newview/llviewertexturelist.cpp
index 2008a884db..e3b633dc0e 100644
--- a/indra/newview/llviewertexturelist.cpp
+++ b/indra/newview/llviewertexturelist.cpp
@@ -701,6 +701,11 @@ void LLViewerTextureList::updateImagesDecodePriorities()
LLPointer<LLViewerFetchedTexture> imagep = iter->second;
++iter; // safe to incrament now
+ if(imagep->isInDebug())
+ {
+ continue; //is in debug, ignore.
+ }
+
//
// Flush formatted images using a lazy flush
//
@@ -773,6 +778,27 @@ void LLViewerTextureList::updateImagesDecodePriorities()
}
}
+void LLViewerTextureList::setDebugFetching(LLViewerFetchedTexture* tex, S32 debug_level)
+{
+ if(!tex->setDebugFetching(debug_level))
+ {
+ return;
+ }
+
+ const F32 DEBUG_PRIORITY = 100000.f;
+ F32 old_priority_test = llmax(tex->getDecodePriority(), 0.0f);
+ F32 decode_priority_test = DEBUG_PRIORITY;
+
+ // Ignore < 20% difference
+ if ((decode_priority_test < old_priority_test * .8f) ||
+ (decode_priority_test > old_priority_test * 1.25f))
+ {
+ removeImageFromList(tex);
+ tex->setDecodePriority(decode_priority_test);
+ addImageToList(tex);
+ }
+}
+
/*
static U8 get_image_type(LLViewerFetchedTexture* imagep, LLHost target_host)
{