Merge remote-tracking branch 'github/master'
This commit is contained in:
@@ -1432,7 +1432,6 @@ bool idle_startup()
|
|||||||
LL_DEBUGS("AppInit") << "downloading..." << LL_ENDL;
|
LL_DEBUGS("AppInit") << "downloading..." << LL_ENDL;
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
Debug(if (gCurlIo) dc::curlio.off()); // Login succeeded: restore dc::curlio to original state.
|
|
||||||
LLStartUp::setStartupState( STATE_LOGIN_PROCESS_RESPONSE );
|
LLStartUp::setStartupState( STATE_LOGIN_PROCESS_RESPONSE );
|
||||||
progress += 0.01f;
|
progress += 0.01f;
|
||||||
set_startup_status(progress, LLTrans::getString("LoginProcessingResponse"), auth_message);
|
set_startup_status(progress, LLTrans::getString("LoginProcessingResponse"), auth_message);
|
||||||
@@ -1469,6 +1468,7 @@ bool idle_startup()
|
|||||||
{
|
{
|
||||||
// Yay, login!
|
// Yay, login!
|
||||||
successful_login = true;
|
successful_login = true;
|
||||||
|
Debug(if (gCurlIo) dc::curlio.off()); // Login succeeded: restore dc::curlio to original state.
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@@ -1548,13 +1548,12 @@ bool idle_startup()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case LLUserAuth::E_COULDNT_RESOLVE_HOST:
|
|
||||||
case LLUserAuth::E_SSL_PEER_CERTIFICATE:
|
|
||||||
case LLUserAuth::E_UNHANDLED_ERROR:
|
|
||||||
case LLUserAuth::E_SSL_CACERT:
|
|
||||||
case LLUserAuth::E_SSL_CONNECT_ERROR:
|
|
||||||
default:
|
default:
|
||||||
if (LLViewerLogin::getInstance()->tryNextURI())
|
{
|
||||||
|
static int http_failures = 0;
|
||||||
|
http_failures = (error == LLUserAuth::E_HTTP_SERVER_ERROR) ? http_failures + 1 : 0;
|
||||||
|
if ((error == LLUserAuth::E_HTTP_SERVER_ERROR && http_failures <= 3) ||
|
||||||
|
LLViewerLogin::getInstance()->tryNextURI())
|
||||||
{
|
{
|
||||||
static int login_attempt_number = 0;
|
static int login_attempt_number = 0;
|
||||||
std::ostringstream s;
|
std::ostringstream s;
|
||||||
@@ -1569,6 +1568,7 @@ bool idle_startup()
|
|||||||
emsg << "Unable to connect to " << gHippoGridManager->getCurrentGrid()->getGridName() << ".\n";
|
emsg << "Unable to connect to " << gHippoGridManager->getCurrentGrid()->getGridName() << ".\n";
|
||||||
emsg << LLUserAuth::getInstance()->errorMessage();
|
emsg << LLUserAuth::getInstance()->errorMessage();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -323,7 +323,16 @@ LLUserAuth::UserAuthcode LLUserAuth::parseResponse()
|
|||||||
// will all be string => string pairs.
|
// will all be string => string pairs.
|
||||||
UserAuthcode rv = E_UNHANDLED_ERROR;
|
UserAuthcode rv = E_UNHANDLED_ERROR;
|
||||||
XMLRPC_REQUEST response = mResponder->response();
|
XMLRPC_REQUEST response = mResponder->response();
|
||||||
if(!response) return rv;
|
if(!response)
|
||||||
|
{
|
||||||
|
U32 status = mResponder->http_status();
|
||||||
|
// Is it an HTTP error?
|
||||||
|
if (!(200 <= status && status < 400))
|
||||||
|
{
|
||||||
|
rv = E_HTTP_SERVER_ERROR;
|
||||||
|
}
|
||||||
|
return rv;
|
||||||
|
}
|
||||||
|
|
||||||
// clear out any old parsing
|
// clear out any old parsing
|
||||||
mResponses.clear();
|
mResponses.clear();
|
||||||
|
|||||||
@@ -88,6 +88,7 @@ public:
|
|||||||
E_SSL_PEER_CERTIFICATE,
|
E_SSL_PEER_CERTIFICATE,
|
||||||
E_SSL_CACERT,
|
E_SSL_CACERT,
|
||||||
E_SSL_CONNECT_ERROR,
|
E_SSL_CONNECT_ERROR,
|
||||||
|
E_HTTP_SERVER_ERROR,
|
||||||
E_UNHANDLED_ERROR,
|
E_UNHANDLED_ERROR,
|
||||||
E_LAST // never use!
|
E_LAST // never use!
|
||||||
} UserAuthcode;
|
} UserAuthcode;
|
||||||
|
|||||||
@@ -99,6 +99,8 @@ private:
|
|||||||
XMLRPC_REQUEST mResponse;
|
XMLRPC_REQUEST mResponse;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
|
XMLRPCResponder(void) : mBufferSize(0), mReceivedHTTPHeader(false), mResponse(NULL) { }
|
||||||
|
|
||||||
// Accessors.
|
// Accessors.
|
||||||
F64 transferRate(void) const;
|
F64 transferRate(void) const;
|
||||||
bool is_downloading(void) const { return mReceivedHTTPHeader; }
|
bool is_downloading(void) const { return mReceivedHTTPHeader; }
|
||||||
|
|||||||
Reference in New Issue
Block a user