summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--indra/newview/llviewertexturelist.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/indra/newview/llviewertexturelist.cpp b/indra/newview/llviewertexturelist.cpp
index 1ffae7ce83..a1d9434d44 100644
--- a/indra/newview/llviewertexturelist.cpp
+++ b/indra/newview/llviewertexturelist.cpp
@@ -281,6 +281,8 @@ void LLViewerTextureList::shutdown()
mUUIDMap.clear();
mImageList.clear();
+
+ mInitialized = FALSE ; //prevent loading textures again.
}
void LLViewerTextureList::dump()
@@ -328,6 +330,11 @@ LLViewerFetchedTexture* LLViewerTextureList::getImageFromFile(const std::string&
LLGLenum primary_format,
const LLUUID& force_id)
{
+ if(!mInitialized)
+ {
+ return NULL ;
+ }
+
std::string full_path = gDirUtilp->findSkinnedFilename("textures", filename);
if (full_path.empty())
{
@@ -348,6 +355,11 @@ LLViewerFetchedTexture* LLViewerTextureList::getImageFromUrl(const std::string&
LLGLenum primary_format,
const LLUUID& force_id)
{
+ if(!mInitialized)
+ {
+ return NULL ;
+ }
+
// generate UUID based on hash of filename
LLUUID new_id;
if (force_id.notNull())
@@ -407,6 +419,11 @@ LLViewerFetchedTexture* LLViewerTextureList::getImage(const LLUUID &image_id,
LLGLenum primary_format,
LLHost request_from_host)
{
+ if(!mInitialized)
+ {
+ return NULL ;
+ }
+
// Return the image with ID image_id
// If the image is not found, creates new image and
// enqueues a request for transmission