diff options
| -rw-r--r-- | .hgtags | 1 | ||||
| -rwxr-xr-x | indra/newview/llmeshrepository.cpp | 33 | 
2 files changed, 20 insertions, 14 deletions
@@ -414,3 +414,4 @@ a676b4d6c037b39fe5b8e42cf8839a9303936089 DRTVWR-289  b23419a2748483c98f3b84b630468a21c88feba5 DRTVWR-292  1567de5700c273b583dac41b64275c223287306e 3.4.5-beta4  1cce8447f8f574673e3f47d6fe584262e6964fe2 DRTVWR-296 +0a5d409161ef2a89b28c9a741051dd2dedc707d6 DRTVWR-297 diff --git a/indra/newview/llmeshrepository.cpp b/indra/newview/llmeshrepository.cpp index 09003e3e53..1223615079 100755 --- a/indra/newview/llmeshrepository.cpp +++ b/indra/newview/llmeshrepository.cpp @@ -215,17 +215,19 @@ public:  	~LLMeshHeaderResponder()  	{ -		if (!mProcessed && !LLApp::isQuitting()) -		{ //something went wrong, retry -			llwarns << "Timeout or service unavailable, retrying." << llendl; -			LLMeshRepository::sHTTPRetryCount++; -			LLMeshRepoThread::HeaderRequest req(mMeshParams); -			LLMutexLock lock(gMeshRepo.mThread->mMutex); -			gMeshRepo.mThread->mHeaderReqQ.push(req); +		if (!LLApp::isQuitting()) +		{ +			if (!mProcessed) +			{ //something went wrong, retry +				llwarns << "Timeout or service unavailable, retrying." << llendl; +				LLMeshRepository::sHTTPRetryCount++; +				LLMeshRepoThread::HeaderRequest req(mMeshParams); +				LLMutexLock lock(gMeshRepo.mThread->mMutex); +				gMeshRepo.mThread->mHeaderReqQ.push(req); +			} +			LLMeshRepoThread::decActiveHeaderRequests();  		} - -		LLMeshRepoThread::decActiveHeaderRequests();  	}  	virtual void completedRaw(U32 status, const std::string& reason, @@ -252,13 +254,16 @@ public:  	~LLMeshLODResponder()  	{ -		if (!mProcessed && !LLApp::isQuitting()) +		if (!LLApp::isQuitting())  		{ -			llwarns << "Killed without being processed, retrying." << llendl; -			LLMeshRepository::sHTTPRetryCount++; -			gMeshRepo.mThread->lockAndLoadMeshLOD(mMeshParams, mLOD); +			if (!mProcessed) +			{ +				llwarns << "Killed without being processed, retrying." << llendl; +				LLMeshRepository::sHTTPRetryCount++; +				gMeshRepo.mThread->lockAndLoadMeshLOD(mMeshParams, mLOD); +			} +			LLMeshRepoThread::decActiveLODRequests();  		} -		LLMeshRepoThread::decActiveLODRequests();  	}  	virtual void completedRaw(U32 status, const std::string& reason,  | 
