Chromium Code Reviews| Index: chrome/browser/component_updater/sth_set_component_installer.cc |
| diff --git a/chrome/browser/component_updater/sth_set_component_installer.cc b/chrome/browser/component_updater/sth_set_component_installer.cc |
| index 401a79f3e41622b6d4a325b6fdf522af69fbd5e8..6751668b188821c25d677baaabd57958b2259805 100644 |
| --- a/chrome/browser/component_updater/sth_set_component_installer.cc |
| +++ b/chrome/browser/component_updater/sth_set_component_installer.cc |
| @@ -15,6 +15,7 @@ |
| #include "base/strings/string_number_conversions.h" |
| #include "base/values.h" |
| #include "base/version.h" |
| +#include "chrome/browser/net/sth_distributor_provider.h" |
| #include "components/component_updater/component_updater_paths.h" |
| #include "components/safe_json/safe_json_parser.h" |
| #include "content/public/browser/browser_thread.h" |
| @@ -49,8 +50,8 @@ const uint8_t kPublicKeySHA256[32] = { |
| const char kSTHSetFetcherManifestName[] = "Signed Tree Heads"; |
| STHSetComponentInstallerTraits::STHSetComponentInstallerTraits( |
| - std::unique_ptr<net::ct::STHObserver> sth_observer) |
| - : sth_observer_(std::move(sth_observer)) {} |
| + net::ct::STHObserver* sth_observer) |
| + : sth_observer_(sth_observer) {} |
| STHSetComponentInstallerTraits::~STHSetComponentInstallerTraits() {} |
| @@ -168,7 +169,7 @@ void STHSetComponentInstallerTraits::OnJsonParseSuccess( |
| content::BrowserThread::PostTask( |
| content::BrowserThread::IO, FROM_HERE, |
| base::Bind(&net::ct::STHObserver::NewSTHObserved, |
| - base::Unretained(sth_observer_.get()), signed_tree_head)); |
| + base::Unretained(sth_observer_), signed_tree_head)); |
| } |
| void STHSetComponentInstallerTraits::OnJsonParseError( |
| @@ -182,14 +183,13 @@ void RegisterSTHSetComponent(ComponentUpdateService* cus, |
| const base::FilePath& user_data_dir) { |
| DVLOG(1) << "Registering STH Set fetcher component."; |
| - // TODO(eranm): The next step in auditing CT logs (crbug.com/506227) is to |
| - // pass the distributor to the IOThread so it can be used in a per-profile |
| - // context for checking inclusion of SCTs. |
| - std::unique_ptr<net::ct::STHDistributor> distributor( |
| - new net::ct::STHDistributor()); |
| + net::ct::STHDistributor* distributor( |
| + chrome_browser_net::GetGlobalSTHDistributor()); |
| + // The global STHDistributor should have been created by this point. |
| + DCHECK(distributor != nullptr); |
|
Ryan Sleevi
2016/05/27 04:59:53
DCHECK(distributor)
(Rely on boolean conversion)
Eran Messeri
2016/05/27 08:43:54
Done.
|
| std::unique_ptr<ComponentInstallerTraits> traits( |
| - new STHSetComponentInstallerTraits(std::move(distributor))); |
| + new STHSetComponentInstallerTraits(distributor)); |
| // |cus| will take ownership of |installer| during installer->Register(cus). |
| DefaultComponentInstaller* installer = |
| new DefaultComponentInstaller(std::move(traits)); |