summaryrefslogtreecommitdiff
path: root/indra/newview/llvlcomposition.cpp
diff options
context:
space:
mode:
authorRick Pasetto <rick@lindenlab.com>2009-11-19 09:29:08 -0800
committerRick Pasetto <rick@lindenlab.com>2009-11-19 09:29:08 -0800
commit0627d550f371c26b00e802bae288a5e6def53345 (patch)
tree8f4e740736d4fbca2eb543bb0148232e968286ef /indra/newview/llvlcomposition.cpp
parent9e53ad6111ce0e15cb10f2ffb47fee8b48d1c3db (diff)
parent51e640e5d753ac9dc005cd6827db77988a04b8fa (diff)
Automated merge with ssh://rick@hg.lindenlab.com/rick/viewer-2-0-rickcallum/
Diffstat (limited to 'indra/newview/llvlcomposition.cpp')
-rw-r--r--indra/newview/llvlcomposition.cpp13
1 files changed, 9 insertions, 4 deletions
diff --git a/indra/newview/llvlcomposition.cpp b/indra/newview/llvlcomposition.cpp
index 999701ece1..6340189c93 100644
--- a/indra/newview/llvlcomposition.cpp
+++ b/indra/newview/llvlcomposition.cpp
@@ -287,17 +287,22 @@ BOOL LLVLComposition::generateTexture(const F32 x, const F32 y,
min_dim /= 2;
}
- mDetailTextures[i]->reloadRawImage(ddiscard) ;
+ BOOL delete_raw = (mDetailTextures[i]->reloadRawImage(ddiscard) != NULL) ;
if(mDetailTextures[i]->getRawImageLevel() != ddiscard)//raw iamge is not ready, will enter here again later.
{
- mDetailTextures[i]->destroyRawImage() ;
+ if(delete_raw)
+ {
+ mDetailTextures[i]->destroyRawImage() ;
+ }
lldebugs << "cached raw data for terrain detail texture is not ready yet: " << mDetailTextures[i]->getID() << llendl;
return FALSE;
}
mRawImages[i] = mDetailTextures[i]->getRawImage() ;
- mDetailTextures[i]->destroyRawImage() ;
-
+ if(delete_raw)
+ {
+ mDetailTextures[i]->destroyRawImage() ;
+ }
if (mDetailTextures[i]->getWidth(ddiscard) != BASE_SIZE ||
mDetailTextures[i]->getHeight(ddiscard) != BASE_SIZE ||
mDetailTextures[i]->getComponents() != 3)