diff options
author | Xiaohong Bao <bao@lindenlab.com> | 2010-06-16 11:42:05 -0600 |
---|---|---|
committer | Xiaohong Bao <bao@lindenlab.com> | 2010-06-16 11:42:05 -0600 |
commit | 8108de817c32e3e4f7337b76534987c3be54bedc (patch) | |
tree | 3689a695797f257a38421477f3f64a0c53dc6653 /indra | |
parent | 8f592d0ecdaa2a43b313a6a9f192eb2f4d999a92 (diff) |
EXT-6567: POSSIBLE FIXED: crash at LLImageBase::allocateData [secondlife-bin llimage.cpp:170];
also removed the debug code for this bug.
Diffstat (limited to 'indra')
-rw-r--r-- | indra/llimage/llimage.cpp | 8 | ||||
-rw-r--r-- | indra/newview/lltexturefetch.cpp | 11 |
2 files changed, 11 insertions, 8 deletions
diff --git a/indra/llimage/llimage.cpp b/indra/llimage/llimage.cpp index aa7c8c789a..0fc5ca1ad6 100644 --- a/indra/llimage/llimage.cpp +++ b/indra/llimage/llimage.cpp @@ -168,8 +168,8 @@ U8* LLImageBase::allocateData(S32 size) } else { - llerrs << "LLImageBase::allocateData: bad size: " << size << llendl; - } + llerrs << "LLImageBase::allocateData: bad size: " << size << llendl; + } } if (!mData || size != mDataSize) { @@ -267,10 +267,6 @@ LLImageRaw::LLImageRaw(U16 width, U16 height, S8 components) { mMemType = LLMemType::MTYPE_IMAGERAW; //llassert( S32(width) * S32(height) * S32(components) <= MAX_IMAGE_DATA_SIZE ); - if(S32(width) * S32(height) * S32(components) > MAX_IMAGE_DATA_SIZE) - { - llwarns << "over size: width: " << (S32)width << " height: " << (S32)height << " components: " << (S32)components << llendl ; - } allocateDataSize(width, height, components); ++sRawImageCount; } diff --git a/indra/newview/lltexturefetch.cpp b/indra/newview/lltexturefetch.cpp index 52d227f827..ffd0330ace 100644 --- a/indra/newview/lltexturefetch.cpp +++ b/indra/newview/lltexturefetch.cpp @@ -582,14 +582,21 @@ bool LLTextureFetchWorker::doWork(S32 param) { LLMutexLock lock(&mWorkMutex); - if ((mFetcher->isQuitting() || mImagePriority < 1.0f || getFlags(LLWorkerClass::WCF_DELETE_REQUESTED))) + if ((mFetcher->isQuitting() || getFlags(LLWorkerClass::WCF_DELETE_REQUESTED))) { if (mState < DECODE_IMAGE) { return true; // abort } } - + if(mImagePriority < 1.0f) + { + if (mState == INIT || mState == LOAD_FROM_NETWORK || mState == LOAD_FROM_SIMULATOR) + { + return true; // abort + } + } + if (mFetcher->mDebugPause) { return false; // debug: don't do any work |