summaryrefslogtreecommitdiff
path: root/indra/newview/llstartup.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'indra/newview/llstartup.cpp')
-rw-r--r--indra/newview/llstartup.cpp18
1 files changed, 15 insertions, 3 deletions
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp
index e5c272a264..494a1b3378 100644
--- a/indra/newview/llstartup.cpp
+++ b/indra/newview/llstartup.cpp
@@ -1381,6 +1381,10 @@ bool idle_startup()
{
set_startup_status(0.30f, LLTrans::getString("LoginInitializingWorld"), gAgent.mMOTD);
do_startup_frame();
+
+ // close login UI before world UI is initialized, if it is still visible
+ LLPanelLogin::closePanel();
+
// We should have an agent id by this point.
llassert(!(gAgentID == LLUUID::null));
@@ -3270,14 +3274,22 @@ void reset_login()
if ( gViewerWindow )
{ // Hide menus and normal buttons
gViewerWindow->setNormalControlsVisible( false );
- gLoginMenuBarView->setVisible( true );
- gLoginMenuBarView->setEnabled( true );
+
+ if (gLoginMenuBarView)
+ {
+ gLoginMenuBarView->setVisible(true);
+ gLoginMenuBarView->setEnabled(true);
+ }
+ else
+ {
+ LL_WARNS("AppInit") << "gLoginMenuBarView not initialized" << LL_ENDL;
+ }
}
// Hide any other stuff
LLFloaterReg::hideVisibleInstances();
- if (LLStartUp::getStartupState() > STATE_WORLD_INIT)
+ if (LLStartUp::getStartupState() > STATE_WORLD_INIT && gViewerWindow)
{
gViewerWindow->resetStatusBarContainer();
}