SL-10635 Better handlling for unexpected situations

master
andreykproductengine 2019-03-07 20:26:15 +02:00
parent f488e5855a
commit 88b53a26ce
2 changed files with 14 additions and 8 deletions

View File

@ -738,14 +738,7 @@ void LLFloaterEditExtDayCycle::onButtonImport()
void LLFloaterEditExtDayCycle::onButtonLoadFrame()
{
LLUUID curitemId = mInventoryId;
if (mCurrentEdit && curitemId.notNull())
{
curitemId = LLFloaterSettingsPicker::findItemID(mCurrentEdit->getAssetId(), false, false);
}
doOpenInventoryFloater((mCurrentTrack == LLSettingsDay::TRACK_WATER) ? LLSettingsType::ST_WATER : LLSettingsType::ST_SKY, curitemId);
doOpenInventoryFloater((mCurrentTrack == LLSettingsDay::TRACK_WATER) ? LLSettingsType::ST_WATER : LLSettingsType::ST_SKY, LLUUID::null);
}
void LLFloaterEditExtDayCycle::onAddFrame()

View File

@ -151,6 +151,8 @@ void LLFloaterSettingsPicker::onClose(bool app_quitting)
{
owner->setFocus(TRUE);
}
mSettingItemID.setNull();
mInventoryPanel->getRootFolder()->clearSelection();
}
void LLFloaterSettingsPicker::setValue(const LLSD& value)
@ -302,8 +304,19 @@ void LLFloaterSettingsPicker::onAssetLoaded(LLUUID asset_id, LLSettingsBase::ptr
LLComboBox* track_selection = getChild<LLComboBox>(CMB_TRACK_SELECTION);
track_selection->clear();
track_selection->removeall();
if (!settings)
{
LL_WARNS() << "Failed to load asset " << asset_id << LL_ENDL;
return;
}
LLSettingsDay::ptr_t pday = std::dynamic_pointer_cast<LLSettingsDay>(settings);
if (!pday)
{
LL_WARNS() << "Wrong asset type received by id " << asset_id << LL_ENDL;
return;
}
if (mTrackMode == TRACK_WATER)
{
track_selection->add(getString(STR_TRACK_WATER), LLSD::Integer(LLSettingsDay::TRACK_WATER), ADD_TOP, true);