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/google/google_update_win.h" | 5 #include "chrome/browser/google/google_update_win.h" |
6 | 6 |
7 #include <atlbase.h> | 7 #include <atlbase.h> |
8 #include <atlcom.h> | 8 #include <atlcom.h> |
9 #include <stdint.h> | 9 #include <stdint.h> |
10 #include <string.h> | 10 #include <string.h> |
11 | 11 |
| 12 #include <string> |
12 #include <utility> | 13 #include <utility> |
13 #include <vector> | 14 #include <vector> |
14 | 15 |
15 #include "base/bind.h" | 16 #include "base/bind.h" |
16 #include "base/callback.h" | 17 #include "base/callback.h" |
17 #include "base/files/file_path.h" | 18 #include "base/files/file_path.h" |
18 #include "base/location.h" | 19 #include "base/location.h" |
19 #include "base/macros.h" | 20 #include "base/macros.h" |
20 #include "base/metrics/histogram_macros.h" | 21 #include "base/metrics/histogram_macros.h" |
21 #include "base/metrics/sparse_histogram.h" | 22 #include "base/metrics/sparse_histogram.h" |
(...skipping 534 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
556 // check. | 557 // check. |
557 app_bundle->put_parentHWND( | 558 app_bundle->put_parentHWND( |
558 reinterpret_cast<ULONG_PTR>(elevation_window_)); | 559 reinterpret_cast<ULONG_PTR>(elevation_window_)); |
559 } | 560 } |
560 app_bundle_.swap(app_bundle); | 561 app_bundle_.swap(app_bundle); |
561 } | 562 } |
562 | 563 |
563 // Get a reference to the Chrome app in the bundle. | 564 // Get a reference to the Chrome app in the bundle. |
564 if (!app_) { | 565 if (!app_) { |
565 base::string16 app_guid = | 566 base::string16 app_guid = |
566 installer::GetAppGuidForUpdates(system_level_install_); | 567 BrowserDistribution::GetDistribution()->GetAppGuid(); |
567 DCHECK(!app_guid.empty()); | 568 DCHECK(!app_guid.empty()); |
568 | 569 |
569 base::win::ScopedComPtr<IDispatch> dispatch; | 570 base::win::ScopedComPtr<IDispatch> dispatch; |
570 // It is common for this call to fail with APP_USING_EXTERNAL_UPDATER if | 571 // It is common for this call to fail with APP_USING_EXTERNAL_UPDATER if |
571 // an auto update is in progress. | 572 // an auto update is in progress. |
572 hresult = app_bundle_->createInstalledApp( | 573 hresult = app_bundle_->createInstalledApp( |
573 base::win::ScopedBstr(app_guid.c_str())); | 574 base::win::ScopedBstr(app_guid.c_str())); |
574 if (FAILED(hresult)) | 575 if (FAILED(hresult)) |
575 return hresult; | 576 return hresult; |
576 // Move the IAppBundleWeb reference into a local now so that failures from | 577 // Move the IAppBundleWeb reference into a local now so that failures from |
(...skipping 312 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
889 const GoogleUpdate3ClassFactory& google_update_factory) { | 890 const GoogleUpdate3ClassFactory& google_update_factory) { |
890 if (g_google_update_factory) { | 891 if (g_google_update_factory) { |
891 delete g_google_update_factory; | 892 delete g_google_update_factory; |
892 g_google_update_factory = nullptr; | 893 g_google_update_factory = nullptr; |
893 } | 894 } |
894 if (!google_update_factory.is_null()) { | 895 if (!google_update_factory.is_null()) { |
895 g_google_update_factory = | 896 g_google_update_factory = |
896 new GoogleUpdate3ClassFactory(google_update_factory); | 897 new GoogleUpdate3ClassFactory(google_update_factory); |
897 } | 898 } |
898 } | 899 } |
OLD | NEW |