diff --git a/bin/cloudbrowser/src/CloudContext.cpp b/bin/cloudbrowser/src/CloudContext.cpp index 70992ed50e322e1fc4c45a634488d46f4679dc8f..851cbe8d6db5aa591b9829d1e55947fda5209c29 100644 --- a/bin/cloudbrowser/src/CloudContext.cpp +++ b/bin/cloudbrowser/src/CloudContext.cpp @@ -106,11 +106,11 @@ CloudContext::CloudContext(QObject* parent) for (auto j : providers) { auto obj = j.toMap(); auto label = obj["label"].toString().toStdString(); - user_provider_model_.add( - {label, - this->provider(obj["type"].toString().toStdString(), label, - Token{obj["token"].toString().toStdString(), - obj["access_token"].toString().toStdString()})}); + auto provider = + this->provider(obj["type"].toString().toStdString(), label, + Token{obj["token"].toString().toStdString(), + obj["access_token"].toString().toStdString()}); + if (provider) user_provider_model_.add({label, std::move(provider)}); } for (auto p : ICloudStorage::create()->providers()) { auth_server_.push_back(http_server_factory_->create( @@ -130,6 +130,7 @@ CloudContext::CloudContext(QObject* parent) CloudContext::~CloudContext() { save(); + thread_pool_ = nullptr; util::log_stream(util::make_unique(std::cerr.rdbuf())); }