OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/component_updater/recovery_component_installer.h" | 5 #include "chrome/browser/component_updater/recovery_component_installer.h" |
6 | 6 |
7 #include <stdint.h> | 7 #include <stdint.h> |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "base/base_paths.h" | 10 #include "base/base_paths.h" |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
196 | 196 |
197 Version current_version_; | 197 Version current_version_; |
198 PrefService* prefs_; | 198 PrefService* prefs_; |
199 }; | 199 }; |
200 | 200 |
201 void SimulateElevatedRecoveryHelper(PrefService* prefs) { | 201 void SimulateElevatedRecoveryHelper(PrefService* prefs) { |
202 prefs->SetBoolean(prefs::kRecoveryComponentNeedsElevation, true); | 202 prefs->SetBoolean(prefs::kRecoveryComponentNeedsElevation, true); |
203 } | 203 } |
204 | 204 |
205 void RecoveryRegisterHelper(ComponentUpdateService* cus, PrefService* prefs) { | 205 void RecoveryRegisterHelper(ComponentUpdateService* cus, PrefService* prefs) { |
206 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 206 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
207 Version version(prefs->GetString(prefs::kRecoveryComponentVersion)); | 207 Version version(prefs->GetString(prefs::kRecoveryComponentVersion)); |
208 if (!version.IsValid()) { | 208 if (!version.IsValid()) { |
209 NOTREACHED(); | 209 NOTREACHED(); |
210 return; | 210 return; |
211 } | 211 } |
212 | 212 |
213 update_client::CrxComponent recovery; | 213 update_client::CrxComponent recovery; |
214 recovery.name = "recovery"; | 214 recovery.name = "recovery"; |
215 recovery.installer = new RecoveryComponentInstaller(version, prefs); | 215 recovery.installer = new RecoveryComponentInstaller(version, prefs); |
216 recovery.version = version; | 216 recovery.version = version; |
217 recovery.pk_hash.assign(kSha2Hash, &kSha2Hash[sizeof(kSha2Hash)]); | 217 recovery.pk_hash.assign(kSha2Hash, &kSha2Hash[sizeof(kSha2Hash)]); |
218 if (cus->RegisterComponent(recovery) != ComponentUpdateService::Status::kOk) { | 218 if (cus->RegisterComponent(recovery) != ComponentUpdateService::Status::kOk) { |
219 NOTREACHED() << "Recovery component registration failed."; | 219 NOTREACHED() << "Recovery component registration failed."; |
220 } | 220 } |
221 } | 221 } |
222 | 222 |
223 void RecoveryUpdateVersionHelper(const Version& version, PrefService* prefs) { | 223 void RecoveryUpdateVersionHelper(const Version& version, PrefService* prefs) { |
224 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 224 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
225 prefs->SetString(prefs::kRecoveryComponentVersion, version.GetString()); | 225 prefs->SetString(prefs::kRecoveryComponentVersion, version.GetString()); |
226 } | 226 } |
227 | 227 |
228 void SetPrefsForElevatedRecoveryInstall(const base::FilePath& unpack_path, | 228 void SetPrefsForElevatedRecoveryInstall(const base::FilePath& unpack_path, |
229 PrefService* prefs) { | 229 PrefService* prefs) { |
230 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 230 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
231 prefs->SetFilePath(prefs::kRecoveryComponentUnpackPath, unpack_path); | 231 prefs->SetFilePath(prefs::kRecoveryComponentUnpackPath, unpack_path); |
232 prefs->SetBoolean(prefs::kRecoveryComponentNeedsElevation, true); | 232 prefs->SetBoolean(prefs::kRecoveryComponentNeedsElevation, true); |
233 } | 233 } |
234 | 234 |
235 RecoveryComponentInstaller::RecoveryComponentInstaller(const Version& version, | 235 RecoveryComponentInstaller::RecoveryComponentInstaller(const Version& version, |
236 PrefService* prefs) | 236 PrefService* prefs) |
237 : current_version_(version), prefs_(prefs) { | 237 : current_version_(version), prefs_(prefs) { |
238 DCHECK(version.IsValid()); | 238 DCHECK(version.IsValid()); |
239 } | 239 } |
240 | 240 |
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
387 } | 387 } |
388 | 388 |
389 void RegisterPrefsForRecoveryComponent(PrefRegistrySimple* registry) { | 389 void RegisterPrefsForRecoveryComponent(PrefRegistrySimple* registry) { |
390 registry->RegisterStringPref(prefs::kRecoveryComponentVersion, "0.0.0.0"); | 390 registry->RegisterStringPref(prefs::kRecoveryComponentVersion, "0.0.0.0"); |
391 registry->RegisterFilePathPref(prefs::kRecoveryComponentUnpackPath, | 391 registry->RegisterFilePathPref(prefs::kRecoveryComponentUnpackPath, |
392 base::FilePath()); | 392 base::FilePath()); |
393 registry->RegisterBooleanPref(prefs::kRecoveryComponentNeedsElevation, false); | 393 registry->RegisterBooleanPref(prefs::kRecoveryComponentNeedsElevation, false); |
394 } | 394 } |
395 | 395 |
396 void AcceptedElevatedRecoveryInstall(PrefService* prefs) { | 396 void AcceptedElevatedRecoveryInstall(PrefService* prefs) { |
397 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 397 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
398 | 398 |
399 #if defined(OS_WIN) | 399 #if defined(OS_WIN) |
400 ElevatedInstallRecoveryComponent( | 400 ElevatedInstallRecoveryComponent( |
401 prefs->GetFilePath(prefs::kRecoveryComponentUnpackPath)); | 401 prefs->GetFilePath(prefs::kRecoveryComponentUnpackPath)); |
402 #endif // OS_WIN | 402 #endif // OS_WIN |
403 prefs->SetBoolean(prefs::kRecoveryComponentNeedsElevation, false); | 403 prefs->SetBoolean(prefs::kRecoveryComponentNeedsElevation, false); |
404 } | 404 } |
405 | 405 |
406 void DeclinedElevatedRecoveryInstall(PrefService* prefs) { | 406 void DeclinedElevatedRecoveryInstall(PrefService* prefs) { |
407 DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); | 407 DCHECK_CURRENTLY_ON(BrowserThread::UI); |
408 prefs->SetBoolean(prefs::kRecoveryComponentNeedsElevation, false); | 408 prefs->SetBoolean(prefs::kRecoveryComponentNeedsElevation, false); |
409 } | 409 } |
410 | 410 |
411 } // namespace component_updater | 411 } // namespace component_updater |
OLD | NEW |