Commit 50c655c0 authored by Bailey Berro's avatar Bailey Berro Committed by Commit Bot

SmbService: Ensure DBusThreadManager is initialized before Get()

Prevents an issue once enabling SMB by default where the SmbService
ctor runs before the DBusThreadManager is properly initialized. This
only happens during tests.

Bug: chromium:757625
Change-Id: Id25265a7a9b763c5ea1ab59106df366dda4fd309
Reviewed-on: https://chromium-review.googlesource.com/1195644Reviewed-by: default avatarZentaro Kavanagh <zentaro@chromium.org>
Commit-Queue: Bailey Berro <baileyberro@chromium.org>
Cr-Commit-Position: refs/heads/master@{#587298}
parent 8bfde67e
......@@ -199,6 +199,12 @@ Service* SmbService::GetProviderService() const {
}
SmbProviderClient* SmbService::GetSmbProviderClient() const {
// If the DBusThreadManager or the SmbProviderClient aren't available,
// there isn't much we can do. This should only happen when running tests.
if (!chromeos::DBusThreadManager::IsInitialized() ||
!chromeos::DBusThreadManager::Get()) {
return nullptr;
}
return chromeos::DBusThreadManager::Get()->GetSmbProviderClient();
}
......@@ -266,6 +272,11 @@ void SmbService::StartSetup() {
return;
}
SmbProviderClient* client = GetSmbProviderClient();
if (!client) {
return;
}
if (user->IsActiveDirectoryUser()) {
auto account_id = user->GetAccountId();
const std::string account_id_guid = account_id.GetObjGuid();
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment