SL-15787 Crash at setCapability

master
Andrey Kleshchev 2022-09-07 01:11:47 +03:00
parent 1cc4e061bb
commit c3fe23ef14
1 changed files with 16 additions and 0 deletions

View File

@ -2282,6 +2282,11 @@ void LLViewerRegion::requestSimulatorFeatures()
std::string coroname =
LLCoros::instance().launch("LLViewerRegionImpl::requestSimulatorFeatureCoro",
boost::bind(&LLViewerRegionImpl::requestSimulatorFeatureCoro, url, getHandle()));
// requestSimulatorFeatures can be called from other coros,
// launch() acts like a suspend()
// Make sure we are still good to do
LLCoros::checkStop();
LL_INFOS("AppInit", "SimulatorFeatures") << "Launching " << coroname << " requesting simulator features from " << url << " for region " << getRegionID() << LL_ENDL;
}
@ -3103,6 +3108,12 @@ void LLViewerRegion::setSeedCapability(const std::string& url)
std::string coroname =
LLCoros::instance().launch("LLEnvironmentRequest::requestBaseCapabilitiesCompleteCoro",
boost::bind(&LLViewerRegionImpl::requestBaseCapabilitiesCompleteCoro, getHandle()));
// setSeedCapability can be called from other coros,
// launch() acts like a suspend()
// Make sure we are still good to do
LLCoros::checkStop();
return;
}
@ -3116,6 +3127,11 @@ void LLViewerRegion::setSeedCapability(const std::string& url)
LLCoros::instance().launch("LLViewerRegionImpl::requestBaseCapabilitiesCoro",
boost::bind(&LLViewerRegionImpl::requestBaseCapabilitiesCoro, getHandle()));
// setSeedCapability can be called from other coros,
// launch() acts like a suspend()
// Make sure we are still good to do
LLCoros::checkStop();
LL_INFOS("AppInit", "Capabilities") << "Launching " << coroname << " requesting seed capabilities from " << url << " for region " << getRegionID() << LL_ENDL;
}