Apply fix from SNOW-792 for textures rebaking over and over.
This commit is contained in:
@@ -1382,6 +1382,12 @@ bool LLTextureFetchWorker::doWork(S32 param)
|
||||
setPriority(LLWorkerThread::PRIORITY_HIGH | mWorkPriority);
|
||||
return false ;
|
||||
}
|
||||
else
|
||||
{
|
||||
// UDP is not an option, we are dead
|
||||
resetFormattedData();
|
||||
return true; // failed
|
||||
}
|
||||
}
|
||||
else if (mGetStatus == HTTP_SERVICE_UNAVAILABLE)
|
||||
{
|
||||
@@ -1404,7 +1410,9 @@ bool LLTextureFetchWorker::doWork(S32 param)
|
||||
|
||||
if (mHTTPFailCount >= max_attempts)
|
||||
{
|
||||
if (cur_size > 0)
|
||||
// Make max_attempts attempt at decoding what data we have,
|
||||
// then bail forever on this image
|
||||
if (cur_size > 0 && (mHTTPFailCount < (max_attempts+1)) )
|
||||
{
|
||||
// Use available data
|
||||
mLoadedDiscard = mFormattedImage->getDiscardLevel();
|
||||
@@ -1413,9 +1421,21 @@ bool LLTextureFetchWorker::doWork(S32 param)
|
||||
}
|
||||
else
|
||||
{
|
||||
resetFormattedData();
|
||||
mState = DONE;
|
||||
return true; // failed
|
||||
//roll back to try UDP
|
||||
if(mCanUseNET)
|
||||
{
|
||||
mState = INIT ;
|
||||
mCanUseHTTP = false ;
|
||||
setPriority(LLWorkerThread::PRIORITY_HIGH | mWorkPriority);
|
||||
return false ;
|
||||
}
|
||||
else
|
||||
{
|
||||
// UDP is not an option, we are dead
|
||||
resetFormattedData();
|
||||
mState = DONE;
|
||||
return true; // failed
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user