diff options
Diffstat (limited to 'indra/viewer_components')
| -rw-r--r-- | indra/viewer_components/login/lllogin.cpp | 28 | 
1 files changed, 16 insertions, 12 deletions
diff --git a/indra/viewer_components/login/lllogin.cpp b/indra/viewer_components/login/lllogin.cpp index 8a7e6407ed..5d50d1e182 100644 --- a/indra/viewer_components/login/lllogin.cpp +++ b/indra/viewer_components/login/lllogin.cpp @@ -257,21 +257,25 @@ void LLLogin::Impl::loginCoro(std::string uri, LLSD login_params)                  if (printable_params["wait_for_updater"].asBoolean())                  {                      std::string reason_response = responses["data"]["reason"].asString(); -                    if (reason_response == "update") // No point waiting if not an update +                    // Timeout should produce the isUndefined() object passed here. +                    if (reason_response == "update")                      { -                        // Timeout should produce the isUndefined() object passed here.                          LL_INFOS("LLLogin") << "Login failure, waiting for sync from updater" << LL_ENDL;                          updater = llcoro::suspendUntilEventOnWithTimeout(sSyncPoint, 10, LLSD()); - -                        if (updater.isUndefined()) -                        { -                            LL_WARNS("LLLogin") << "Failed to hear from updater, proceeding with fail.login" -                                << LL_ENDL; -                        } -                        else -                        { -                            LL_DEBUGS("LLLogin") << "Got responses from updater and login.cgi" << LL_ENDL; -                        } +                    } +                    else +                    { +                        LL_DEBUGS("LLLogin") << "Login failure, waiting for sync from updater" << LL_ENDL; +                        updater = llcoro::suspendUntilEventOnWithTimeout(sSyncPoint, 3, LLSD()); +                    } +                    if (updater.isUndefined()) +                    { +                        LL_WARNS("LLLogin") << "Failed to hear from updater, proceeding with fail.login" +                                            << LL_ENDL; +                    } +                    else +                    { +                        LL_DEBUGS("LLLogin") << "Got responses from updater and login.cgi" << LL_ENDL;                      }                  }  | 
