@@ -344,29 +344,34 @@ void ElgatoCloud::_ProcessLogin(nlohmann::json &loginData, bool loadData)
344
344
obs_log (LOG_INFO, " Some other issue occurred" );
345
345
connectionError = true ;
346
346
}
347
- if (mainWindowOpen && window) {
348
- QMetaObject::invokeMethod (
349
- QCoreApplication::instance ()->thread (),
350
- [this , loadData]() {
351
- window->setLoggedIn ();
352
- if (loadData) {
353
- LoadPurchasedProducts ();
354
- }
355
- });
356
- }
357
- _LoadUserData ();
347
+ _LoadUserData (loadData);
358
348
}
359
349
360
- void ElgatoCloud::_LoadUserData ()
350
+ void ElgatoCloud::_LoadUserData (bool loadData )
361
351
{
362
- auto api = MarketplaceApi::getInstance ();
363
- std::string api_url = api->gatewayUrl ();
364
- api_url += " /user" ;
365
- auto userResponse = fetch_string_from_get (api_url, _accessToken);
366
- auto userData = nlohmann::json::parse (userResponse);
367
- api->setUserDetails (userData);
368
-
369
- blog (LOG_INFO, " User Response:\n %s" , userResponse.c_str ());
352
+ try {
353
+ auto api = MarketplaceApi::getInstance ();
354
+ std::string api_url = api->gatewayUrl ();
355
+ api_url += " /user" ;
356
+ auto userResponse = fetch_string_from_get (api_url, _accessToken);
357
+ auto userData = nlohmann::json::parse (userResponse);
358
+ api->setUserDetails (userData);
359
+ blog (LOG_INFO, " User Response:\n %s" , userResponse.c_str ());
360
+ if (mainWindowOpen && window) {
361
+ QMetaObject::invokeMethod (
362
+ QCoreApplication::instance ()->thread (),
363
+ [this , loadData]() {
364
+ window->setLoggedIn ();
365
+ if (loadData) {
366
+ LoadPurchasedProducts ();
367
+ }
368
+ });
369
+ }
370
+ }
371
+ catch (...) {
372
+ obs_log (LOG_INFO, " Invalid response from server" );
373
+ connectionError = true ;
374
+ }
370
375
}
371
376
372
377
void ElgatoCloud::_SaveState ()
0 commit comments