diff options
Diffstat (limited to 'indra')
| -rwxr-xr-x | indra/newview/llmeshrepository.cpp | 30 | 
1 files changed, 29 insertions, 1 deletions
diff --git a/indra/newview/llmeshrepository.cpp b/indra/newview/llmeshrepository.cpp index 52077c620f..ba0a590910 100755 --- a/indra/newview/llmeshrepository.cpp +++ b/indra/newview/llmeshrepository.cpp @@ -1798,7 +1798,12 @@ void LLMeshLODResponder::completedRaw(U32 status, const std::string& reason,  							  const LLChannelDescriptors& channels,  							  const LLIOPipe::buffer_ptr_t& buffer)  { - +	// thread could have already be destroyed during logout +	if( !gMeshRepo.mThread ) +	{ +		return; +	} +	  	S32 data_size = buffer->countAfter(channels.in(), NULL);  	if (status < 200 || status > 400) @@ -1853,6 +1858,12 @@ void LLMeshSkinInfoResponder::completedRaw(U32 status, const std::string& reason  							  const LLChannelDescriptors& channels,  							  const LLIOPipe::buffer_ptr_t& buffer)  { +	// thread could have already be destroyed during logout +	if( !gMeshRepo.mThread ) +	{ +		return; +	} +  	S32 data_size = buffer->countAfter(channels.in(), NULL);  	if (status < 200 || status > 400) @@ -1907,6 +1918,11 @@ void LLMeshDecompositionResponder::completedRaw(U32 status, const std::string& r  							  const LLChannelDescriptors& channels,  							  const LLIOPipe::buffer_ptr_t& buffer)  { +	if( !gMeshRepo.mThread ) +	{ +		return; +	} +  	S32 data_size = buffer->countAfter(channels.in(), NULL);  	if (status < 200 || status > 400) @@ -1961,6 +1977,12 @@ void LLMeshPhysicsShapeResponder::completedRaw(U32 status, const std::string& re  							  const LLChannelDescriptors& channels,  							  const LLIOPipe::buffer_ptr_t& buffer)  { +	// thread could have already be destroyed during logout +	if( !gMeshRepo.mThread ) +	{ +		return; +	} +  	S32 data_size = buffer->countAfter(channels.in(), NULL);  	if (status < 200 || status > 400) @@ -2015,6 +2037,12 @@ void LLMeshHeaderResponder::completedRaw(U32 status, const std::string& reason,  							  const LLChannelDescriptors& channels,  							  const LLIOPipe::buffer_ptr_t& buffer)  { +	// thread could have already be destroyed during logout +	if( !gMeshRepo.mThread ) +	{ +		return; +	} +  	if (status < 200 || status > 400)  	{  		//llwarns  | 
