diff options
author | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2021-12-07 17:56:02 +0200 |
---|---|---|
committer | Andrey Kleshchev <andreykproductengine@lindenlab.com> | 2021-12-08 21:51:32 +0200 |
commit | 150993e2c2efbf75f268aec2d22257e4b562f274 (patch) | |
tree | e091138be176f7ac8bcc1fa42360c742d4e580ca /indra/viewer_components | |
parent | 0424b18eab191056b855062f03a35fb55f90dad0 (diff) |
SL-16450 Don not crash viewer in case of invalid data type
Diffstat (limited to 'indra/viewer_components')
-rw-r--r-- | indra/viewer_components/login/lllogin.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
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. |