FIRE-35111 - Crash in LLSD when simulator features is uninitialised.
This check is really only needed for OpenSim so plpace an exclusion around it. In addition place a guard on the viewerregion check to protect the opensim calls. This may have a sideffect of return false to "bakesEnabled" when in fact we just don;t know yet. TBCmaster
parent
517ab846cb
commit
fc690b10fb
|
|
@ -1098,15 +1098,20 @@ void LLAgentWearables::setWearableOutfit(const LLInventoryItem::item_array_t& it
|
|||
|
||||
const LLWearableType::EType type = new_wearable->getType();
|
||||
//<FS:Beq> BOM fallback legacy opensim
|
||||
if(!gAgent.getRegion()->bakesOnMeshEnabled())
|
||||
#ifdef OPENSIM
|
||||
if (!LLGridManager::getInstance()->isInSecondLife())
|
||||
{
|
||||
if(type == LLWearableType::WT_UNIVERSAL)
|
||||
if(!gAgent.getRegion()->bakesOnMeshEnabled())
|
||||
{
|
||||
LL_DEBUGS("Avatar") << "Universal wearable not supported on this region - ignoring." << LL_ENDL;
|
||||
mismatched++;
|
||||
continue;
|
||||
if(type == LLWearableType::WT_UNIVERSAL)
|
||||
{
|
||||
LL_DEBUGS("Avatar") << "Universal wearable not supported on this region - ignoring." << LL_ENDL;
|
||||
mismatched++;
|
||||
continue;
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
//</FS:Beq>
|
||||
if (type < 0 || type>=LLWearableType::WT_COUNT)
|
||||
{
|
||||
|
|
|
|||
|
|
@ -3978,7 +3978,7 @@ bool LLViewerRegion::meshUploadEnabled() const
|
|||
|
||||
bool LLViewerRegion::bakesOnMeshEnabled() const
|
||||
{
|
||||
return (mSimulatorFeatures.has("BakesOnMeshEnabled") &&
|
||||
return (mSimulatorFeaturesReceived && mSimulatorFeatures.has("BakesOnMeshEnabled") && // FIRE-35111 (bugsplat) checking bakes on mesh feature before features received.
|
||||
mSimulatorFeatures["BakesOnMeshEnabled"].asBoolean());
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue