diff options
Diffstat (limited to 'indra')
-rw-r--r-- | indra/newview/llstartup.cpp | 4 | ||||
-rw-r--r-- | indra/newview/skins/default/xui/en/notifications.xml | 13 | ||||
-rw-r--r-- | indra/viewer_components/login/lllogin.cpp | 10 |
3 files changed, 27 insertions, 0 deletions
diff --git a/indra/newview/llstartup.cpp b/indra/newview/llstartup.cpp index e20d714a3b..42bb267b33 100644 --- a/indra/newview/llstartup.cpp +++ b/indra/newview/llstartup.cpp @@ -1188,6 +1188,10 @@ bool idle_startup() } } + else if (reason_response == "BadType") + { + LLNotificationsUtil::add("LoginFailedToParse", LLSD(), LLSD(), login_alert_done); + } else if (!message.empty()) { // This wasn't a certificate error, so throw up the normal diff --git a/indra/newview/skins/default/xui/en/notifications.xml b/indra/newview/skins/default/xui/en/notifications.xml index b769d20106..756bb52e3e 100644 --- a/indra/newview/skins/default/xui/en/notifications.xml +++ b/indra/newview/skins/default/xui/en/notifications.xml @@ -214,6 +214,19 @@ Make sure your Internet connection is working properly. <notification icon="alertmodal.tga" + name="LoginFailedToParse" + type="alertmodal"> + <tag>fail</tag> +Viewer received malformed response from server. Please, make sure your Internet connection is working properly and try again later. + +If you feel this is in error, please contact Support. + <usetemplate + name="okbutton" + yestext="OK"/> + </notification> + + <notification + icon="alertmodal.tga" name="MessageTemplateNotFound" type="alertmodal"> Message Template [PATH] not found. diff --git a/indra/viewer_components/login/lllogin.cpp b/indra/viewer_components/login/lllogin.cpp index c2a0c46c83..168880dc12 100644 --- a/indra/viewer_components/login/lllogin.cpp +++ b/indra/viewer_components/login/lllogin.cpp @@ -284,6 +284,7 @@ void LLLogin::Impl::loginCoro(std::string uri, LLSD login_params) // If we don't recognize status at all, trouble if (! (status == "CURLError" + || status == "BadType" || status == "XMLRPCError" || status == "OtherError")) { @@ -293,6 +294,15 @@ void LLLogin::Impl::loginCoro(std::string uri, LLSD login_params) return; } + if (status == "BadType") + { + // Invalid xmlrpc type + // Dump this response into logs + LL_WARNS("LLLogin") << "Failed to parse response" + << " from " << xmlrpcPump.getName() + << " pump: " << mAuthResponse << LL_ENDL; + } + // Here status IS one of the errors tested above. // Tell caller this didn't work out so well. |