diff options
| author | Oz Linden <oz@lindenlab.com> | 2011-09-14 08:33:25 -0400 | 
|---|---|---|
| committer | Oz Linden <oz@lindenlab.com> | 2011-09-14 08:33:25 -0400 | 
| commit | b2d20f5a989bde2c4db90091bec37d310cc346fc (patch) | |
| tree | e7161a9e1fc54973c6b324ff5072ea34ff14fa7a | |
| parent | 961c4d3816132f6c3851edf6d8831ca2ed59e203 (diff) | |
| parent | 677135f3c7e0a375bfc3ea1a08ce653c1daa91ee (diff) | |
merge changes for storm-1532
| -rw-r--r-- | doc/contributions.txt | 2 | ||||
| -rw-r--r-- | indra/newview/llvoicevivox.cpp | 31 | 
2 files changed, 18 insertions, 15 deletions
| diff --git a/doc/contributions.txt b/doc/contributions.txt index cbc57d211c..bcdc5a63d2 100644 --- a/doc/contributions.txt +++ b/doc/contributions.txt @@ -177,6 +177,8 @@ Ardy Lay  	VWR-24917  Argent Stonecutter  	VWR-68 +ArminWeatherHax +	STORM-1532  Armin Weatherwax  	VWR-8436  ArminasX Saiman diff --git a/indra/newview/llvoicevivox.cpp b/indra/newview/llvoicevivox.cpp index 8b942fbc6a..90a05cd9e5 100644 --- a/indra/newview/llvoicevivox.cpp +++ b/indra/newview/llvoicevivox.cpp @@ -4498,17 +4498,25 @@ bool LLVivoxVoiceClient::parcelVoiceInfoReceived(state requesting_state)  bool LLVivoxVoiceClient::requestParcelVoiceInfo()  { -	LL_DEBUGS("Voice") << "sending ParcelVoiceInfoRequest (" << mCurrentRegionName << ", " << mCurrentParcelLocalID << ")" << LL_ENDL; - -	// grab the cap for parcel voice info from the region.    	LLViewerRegion * region = gAgent.getRegion(); -	if (region == NULL) +	if (region == NULL || !region->capabilitiesReceived())  	{ +		// we don't have the cap yet, so return false so the caller can try again later. + +		LL_DEBUGS("Voice") << "ParcelVoiceInfoRequest capability not yet available, deferring" << LL_ENDL;  		return false;  	} +  	// grab the cap.  	std::string url = gAgent.getRegion()->getCapability("ParcelVoiceInfoRequest"); -	if (!url.empty()) +	if (url.empty()) +	{ +		// Region dosn't have the cap. Stop probing. +		LL_DEBUGS("Voice") << "ParcelVoiceInfoRequest capability not available in this region" << LL_ENDL; +		setState(stateDisableCleanup); +		return false; +	} +	else   	{  		// if we've already retrieved the cap from the region, go ahead and make the request,  		// and return true so we can go into the state that waits for the response. @@ -4517,18 +4525,11 @@ bool LLVivoxVoiceClient::requestParcelVoiceInfo()  		LL_DEBUGS("Voice") << "sending ParcelVoiceInfoRequest (" << mCurrentRegionName << ", " << mCurrentParcelLocalID << ")" << LL_ENDL;  		LLHTTPClient::post( -						   url, -						   data, -						   new LLVivoxVoiceClientCapResponder(getState())); +						url, +						data, +						new LLVivoxVoiceClientCapResponder(getState()));  		return true;  	} -	else  -	{ -		 -		// we don't have the cap yet, so return false so the caller can try again later. -		LL_DEBUGS("Voice") << "ParcelVoiceInfoRequest cap not yet available, deferring" << LL_ENDL; -		return false; -	}  }  void LLVivoxVoiceClient::switchChannel( | 
