diff options
| author | Merov Linden <merov@lindenlab.com> | 2014-07-22 15:54:53 -0700 |
|---|---|---|
| committer | Merov Linden <merov@lindenlab.com> | 2014-07-22 15:54:53 -0700 |
| commit | 87a7eee21d986e2a1c8b5fd467b5da06112690b5 (patch) | |
| tree | 609741b2e3d0bfe72843342c19e67b7d78f602f4 /indra/newview/lllocalbitmaps.cpp | |
| parent | cec79bdb29ac5438c9b9bb0312b4981116f17f61 (diff) | |
| parent | 532433674c9553636af9ea8d433b9da6d6fae587 (diff) | |
Sync merge with lindenlab/viewer-release
Diffstat (limited to 'indra/newview/lllocalbitmaps.cpp')
| -rwxr-xr-x | indra/newview/lllocalbitmaps.cpp | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/indra/newview/lllocalbitmaps.cpp b/indra/newview/lllocalbitmaps.cpp index 8e4950f5c2..b91e37d596 100755 --- a/indra/newview/lllocalbitmaps.cpp +++ b/indra/newview/lllocalbitmaps.cpp @@ -190,7 +190,7 @@ bool LLLocalBitmap::updateSelf(EUpdateType optional_firstupdate) { // decode is successful, we can safely proceed. LLUUID old_id = LLUUID::null; - if (!(optional_firstupdate == UT_FIRSTUSE) && !mWorldID.isNull()) + if ((optional_firstupdate != UT_FIRSTUSE) && !mWorldID.isNull()) { old_id = mWorldID; } @@ -206,15 +206,18 @@ bool LLLocalBitmap::updateSelf(EUpdateType optional_firstupdate) gTextureList.addImage(texture); - if (!optional_firstupdate == UT_FIRSTUSE) + if (optional_firstupdate != UT_FIRSTUSE) { // seek out everything old_id uses and replace it with mWorldID replaceIDs(old_id, mWorldID); // remove old_id from gimagelist LLViewerFetchedTexture* image = gTextureList.findImage(old_id); - gTextureList.deleteImage(image); - image->unref(); + if (image != NULL) + { + gTextureList.deleteImage(image); + image->unref(); + } } mUpdateRetries = LL_LOCAL_UPDATE_RETRIES; @@ -824,6 +827,12 @@ LLLocalBitmapMgr::~LLLocalBitmapMgr() { } +void LLLocalBitmapMgr::cleanupClass() +{ + std::for_each(sBitmapList.begin(), sBitmapList.end(), DeletePointer()); + sBitmapList.clear(); +} + bool LLLocalBitmapMgr::addUnit() { bool add_successful = false; |
