From 926c4fecead3c7e45bfdccda72082d259c8863d1 Mon Sep 17 00:00:00 2001 From: Beq Date: Sat, 7 Nov 2020 01:47:01 +0000 Subject: [PATCH] SUP-26198 - Grid list "freezes" when adding grid --- indra/newview/fsgridhandler.cpp | 2 ++ indra/newview/fspanellogin.cpp | 15 ++++++++++----- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/indra/newview/fsgridhandler.cpp b/indra/newview/fsgridhandler.cpp index 6919efd005..3205649d32 100644 --- a/indra/newview/fsgridhandler.cpp +++ b/indra/newview/fsgridhandler.cpp @@ -768,6 +768,8 @@ void LLGridManager::addGrid(GridEntry* grid_entry, AddState state) if (existing_grid.has("DEPRECATED")) { LL_DEBUGS("GridManager") << "Removing entry marked as deprecated in the fallback list: " << grid << LL_ENDL; + mGridList[grid] = grid_entry->grid; + list_changed = true; } else if (grid_entry->grid.has("USER_DELETED")) { diff --git a/indra/newview/fspanellogin.cpp b/indra/newview/fspanellogin.cpp index 12a7d3dcee..6699d6bed9 100644 --- a/indra/newview/fspanellogin.cpp +++ b/indra/newview/fspanellogin.cpp @@ -1110,9 +1110,11 @@ void FSPanelLogin::onSelectServer() LLGridManager::getInstance()->addGridListChangedCallback(boost::bind(&FSPanelLogin::gridListChanged, this, _1)); LLGridManager::getInstance()->addGrid(sPendingNewGridURI); } + else #endif - - LLGridManager::getInstance()->setGridChoice(server_combo_val.asString()); + { + LLGridManager::getInstance()->setGridChoice(server_combo_val.asString()); + } /* * Determine whether or not the value in the start_location_combo makes sense @@ -1385,9 +1387,12 @@ void FSPanelLogin::updateServerCombo() if (!sPendingNewGridURI.empty()) { LLSD grid_name = LLGridManager::getInstance()->getGridByAttribute(GRID_LOGIN_URI_VALUE, sPendingNewGridURI, false); - LL_INFOS("AppInit") << "new grid for ["<setSelectedByValue(grid_name, true); - LLGridManager::getInstance()->setGridChoice(grid_name.asString()); + LL_INFOS("AppInit") << "new grid for ["<setSelectedByValue(grid_name, true); + LLGridManager::getInstance()->setGridChoice(grid_name.asString()); + } } #endif