Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(9)

Side by Side Diff: chrome/browser/chrome_elf_init_win.cc

Issue 181373003: Link chrome_elf.dll instead of statically linking the blacklist code (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Add header Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « chrome/browser/chrome_elf_init_unittest_win.cc ('k') | chrome/chrome_browser.gypi » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "base/metrics/field_trial.h" 5 #include "base/metrics/field_trial.h"
6 #include "base/metrics/histogram.h" 6 #include "base/metrics/histogram.h"
7 #include "base/strings/utf_string_conversions.h" 7 #include "base/strings/utf_string_conversions.h"
8 #include "base/win/registry.h" 8 #include "base/win/registry.h"
9 #include "chrome/browser/chrome_elf_init_win.h" 9 #include "chrome/browser/chrome_elf_init_win.h"
10 #include "chrome_elf/blacklist/blacklist.h" 10 #include "chrome_elf/chrome_elf_constants.h"
11 #include "version.h" // NOLINT 11 #include "version.h" // NOLINT
12 12
13 namespace { 13 namespace {
14 14
15 const char kBrowserBlacklistTrialName[] = "BrowserBlacklist"; 15 const char kBrowserBlacklistTrialName[] = "BrowserBlacklist";
16 const char kBrowserBlacklistTrialEnabledGroupName[] = "Enabled"; 16 const char kBrowserBlacklistTrialEnabledGroupName[] = "Enabled";
17 17
18 // This enum is used to define the buckets for an enumerated UMA histogram. 18 // This enum is used to define the buckets for an enumerated UMA histogram.
19 // Hence, 19 // Hence,
20 // (a) existing enumerated constants should never be deleted or reordered, and 20 // (a) existing enumerated constants should never be deleted or reordered, and
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after
57 base::win::RegKey blacklist_registry_key(HKEY_CURRENT_USER); 57 base::win::RegKey blacklist_registry_key(HKEY_CURRENT_USER);
58 blacklist_registry_key.DeleteKey(blacklist::kRegistryBeaconPath); 58 blacklist_registry_key.DeleteKey(blacklist::kRegistryBeaconPath);
59 } 59 }
60 } 60 }
61 61
62 void BrowserBlacklistBeaconSetup() { 62 void BrowserBlacklistBeaconSetup() {
63 base::win::RegKey blacklist_registry_key(HKEY_CURRENT_USER, 63 base::win::RegKey blacklist_registry_key(HKEY_CURRENT_USER,
64 blacklist::kRegistryBeaconPath, 64 blacklist::kRegistryBeaconPath,
65 KEY_QUERY_VALUE | KEY_SET_VALUE); 65 KEY_QUERY_VALUE | KEY_SET_VALUE);
66 66
67 // No point in trying to continue if the registry key isn't valid.
68 if (!blacklist_registry_key.Valid())
69 return;
70
67 // Find the last recorded blacklist version. 71 // Find the last recorded blacklist version.
68 base::string16 blacklist_version; 72 base::string16 blacklist_version;
69 blacklist_registry_key.ReadValue(blacklist::kBeaconVersion, 73 blacklist_registry_key.ReadValue(blacklist::kBeaconVersion,
70 &blacklist_version); 74 &blacklist_version);
71 75
72 if (blacklist_version != TEXT(CHROME_VERSION_STRING)) { 76 if (blacklist_version != TEXT(CHROME_VERSION_STRING)) {
73 // The blacklist hasn't run for this version yet, so enable it. 77 // The blacklist hasn't run for this version yet, so enable it.
74 LONG set_version = blacklist_registry_key.WriteValue( 78 LONG set_version = blacklist_registry_key.WriteValue(
75 blacklist::kBeaconVersion, 79 blacklist::kBeaconVersion,
76 TEXT(CHROME_VERSION_STRING)); 80 TEXT(CHROME_VERSION_STRING));
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
112 116
113 // Since some part of the blacklist failed, ensure it is now disabled 117 // Since some part of the blacklist failed, ensure it is now disabled
114 // for this version. 118 // for this version.
115 if (blacklist_state != blacklist::BLACKLIST_DISABLED) { 119 if (blacklist_state != blacklist::BLACKLIST_DISABLED) {
116 blacklist_registry_key.WriteValue(blacklist::kBeaconState, 120 blacklist_registry_key.WriteValue(blacklist::kBeaconState,
117 blacklist::BLACKLIST_DISABLED); 121 blacklist::BLACKLIST_DISABLED);
118 } 122 }
119 } 123 }
120 } 124 }
121 } 125 }
OLDNEW
« no previous file with comments | « chrome/browser/chrome_elf_init_unittest_win.cc ('k') | chrome/chrome_browser.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698