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/installer/util/installer_state.h" | 5 #include "chrome/installer/util/installer_state.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 #include <functional> | 8 #include <functional> |
9 #include <utility> | 9 #include <utility> |
10 | 10 |
(...skipping 328 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
339 default: | 339 default: |
340 DCHECK(type == UNKNOWN_PACKAGE_TYPE); | 340 DCHECK(type == UNKNOWN_PACKAGE_TYPE); |
341 package_type_ = UNKNOWN_PACKAGE_TYPE; | 341 package_type_ = UNKNOWN_PACKAGE_TYPE; |
342 multi_package_distribution_ = NULL; | 342 multi_package_distribution_ = NULL; |
343 break; | 343 break; |
344 } | 344 } |
345 } | 345 } |
346 | 346 |
347 // Returns the Chrome binaries directory for multi-install or |dist|'s directory | 347 // Returns the Chrome binaries directory for multi-install or |dist|'s directory |
348 // otherwise. | 348 // otherwise. |
349 FilePath InstallerState::GetDefaultProductInstallPath( | 349 base::FilePath InstallerState::GetDefaultProductInstallPath( |
350 BrowserDistribution* dist) const { | 350 BrowserDistribution* dist) const { |
351 DCHECK(dist); | 351 DCHECK(dist); |
352 DCHECK(package_type_ != UNKNOWN_PACKAGE_TYPE); | 352 DCHECK(package_type_ != UNKNOWN_PACKAGE_TYPE); |
353 | 353 |
354 if (package_type_ == SINGLE_PACKAGE) { | 354 if (package_type_ == SINGLE_PACKAGE) { |
355 return GetChromeInstallPath(system_install(), dist); | 355 return GetChromeInstallPath(system_install(), dist); |
356 } else { | 356 } else { |
357 return GetChromeInstallPath(system_install(), | 357 return GetChromeInstallPath(system_install(), |
358 BrowserDistribution::GetSpecificDistribution( | 358 BrowserDistribution::GetSpecificDistribution( |
359 BrowserDistribution::CHROME_BINARIES)); | 359 BrowserDistribution::CHROME_BINARIES)); |
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
590 if (current_version != NULL) { | 590 if (current_version != NULL) { |
591 base::FilePath cf_install_path( | 591 base::FilePath cf_install_path( |
592 target_path().AppendASCII(current_version->GetString()) | 592 target_path().AppendASCII(current_version->GetString()) |
593 .Append(kChromeFrameDll)); | 593 .Append(kChromeFrameDll)); |
594 in_use = file_util::PathExists(cf_install_path) && | 594 in_use = file_util::PathExists(cf_install_path) && |
595 IsFileInUse(cf_install_path); | 595 IsFileInUse(cf_install_path); |
596 } | 596 } |
597 return in_use; | 597 return in_use; |
598 } | 598 } |
599 | 599 |
600 FilePath InstallerState::GetInstallerDirectory(const Version& version) const { | 600 base::FilePath InstallerState::GetInstallerDirectory( |
| 601 const Version& version) const { |
601 return target_path().Append(ASCIIToWide(version.GetString())) | 602 return target_path().Append(ASCIIToWide(version.GetString())) |
602 .Append(kInstallerDir); | 603 .Append(kInstallerDir); |
603 } | 604 } |
604 | 605 |
605 // static | 606 // static |
606 bool InstallerState::IsFileInUse(const base::FilePath& file) { | 607 bool InstallerState::IsFileInUse(const base::FilePath& file) { |
607 // Call CreateFile with a share mode of 0 which should cause this to fail | 608 // Call CreateFile with a share mode of 0 which should cause this to fail |
608 // with ERROR_SHARING_VIOLATION if the file exists and is in-use. | 609 // with ERROR_SHARING_VIOLATION if the file exists and is in-use. |
609 return !base::win::ScopedHandle(CreateFile(file.value().c_str(), | 610 return !base::win::ScopedHandle(CreateFile(file.value().c_str(), |
610 GENERIC_WRITE, 0, NULL, | 611 GENERIC_WRITE, 0, NULL, |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
791 } | 792 } |
792 if (!install_list->Do()) | 793 if (!install_list->Do()) |
793 LOG(ERROR) << "Failed to record installer error information in registry."; | 794 LOG(ERROR) << "Failed to record installer error information in registry."; |
794 } | 795 } |
795 | 796 |
796 bool InstallerState::RequiresActiveSetup() const { | 797 bool InstallerState::RequiresActiveSetup() const { |
797 return system_install() && FindProduct(BrowserDistribution::CHROME_BROWSER); | 798 return system_install() && FindProduct(BrowserDistribution::CHROME_BROWSER); |
798 } | 799 } |
799 | 800 |
800 } // namespace installer | 801 } // namespace installer |
OLD | NEW |