aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden
diff options
context:
space:
mode:
authorMcCabe Maxsted2009-03-01 04:17:42 -0700
committerMcCabe Maxsted2009-03-01 04:17:42 -0700
commitbc0cc449e0ab73effeb6cd113048943f53213367 (patch)
tree492cfd269f0466b1a367eb26e2836aa54ef1cd35 /linden
parentFixed crash involving file picker and locales (patch by Alissa Sabre) (diff)
downloadmeta-impy-bc0cc449e0ab73effeb6cd113048943f53213367.zip
meta-impy-bc0cc449e0ab73effeb6cd113048943f53213367.tar.gz
meta-impy-bc0cc449e0ab73effeb6cd113048943f53213367.tar.bz2
meta-impy-bc0cc449e0ab73effeb6cd113048943f53213367.tar.xz
Backported possible crash fix while changing graphics settings from 1.22
Diffstat (limited to '')
-rw-r--r--linden/indra/newview/pipeline.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/linden/indra/newview/pipeline.cpp b/linden/indra/newview/pipeline.cpp
index 3523635..e7db166 100644
--- a/linden/indra/newview/pipeline.cpp
+++ b/linden/indra/newview/pipeline.cpp
@@ -2665,6 +2665,18 @@ void LLPipeline::renderForSelect(std::set<LLViewerObject*>& objects, BOOL render
2665 LLGLState::checkClientArrays(); 2665 LLGLState::checkClientArrays();
2666 U32 last_type = 0; 2666 U32 last_type = 0;
2667 2667
2668 // If we don't do this, we crash something on changing graphics settings
2669 // from Medium -> Low, because we unload all the shaders and the
2670 // draw pools aren't aware. I don't know if this has to be a separate
2671 // loop before actual rendering. JC
2672 for (pool_set_t::iterator iter = mPools.begin(); iter != mPools.end(); ++iter)
2673 {
2674 LLDrawPool *poolp = *iter;
2675 if (poolp->isFacePool() && hasRenderType(poolp->getType()))
2676 {
2677 poolp->prerender();
2678 }
2679 }
2668 for (pool_set_t::iterator iter = mPools.begin(); iter != mPools.end(); ++iter) 2680 for (pool_set_t::iterator iter = mPools.begin(); iter != mPools.end(); ++iter)
2669 { 2681 {
2670 LLDrawPool *poolp = *iter; 2682 LLDrawPool *poolp = *iter;