summaryrefslogtreecommitdiffstats
path: root/chrome_frame/crash_reporting
diff options
context:
space:
mode:
authoramit@chromium.org <amit@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-19 07:28:46 +0000
committeramit@chromium.org <amit@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-01-19 07:28:46 +0000
commite06f4d5c6bd7bad162c45784e39cd0114635eb42 (patch)
treee53d6b4188af6e49393babc92a797ed5734a1026 /chrome_frame/crash_reporting
parent2b107a348f2b27934fe38680ec8010d743f61765 (diff)
downloadchromium_src-e06f4d5c6bd7bad162c45784e39cd0114635eb42.zip
chromium_src-e06f4d5c6bd7bad162c45784e39cd0114635eb42.tar.gz
chromium_src-e06f4d5c6bd7bad162c45784e39cd0114635eb42.tar.bz2
Regkey functions return error code instead of bool
Change the Regkey helper to consistently use and return LONG instead of bool. Fix RegKey usage all over the code base and get rid of workarounds due to lack of return value. Reviewers: brettw: everything (skip parts for other reviewers if you wish) robertshield,grt: chrome_frame, installer siggi: ceee BUG=none TEST=covered by existing tests Review URL: http://codereview.chromium.org/6090006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71768 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame/crash_reporting')
-rw-r--r--chrome_frame/crash_reporting/crash_metrics.cc23
1 files changed, 12 insertions, 11 deletions
diff --git a/chrome_frame/crash_reporting/crash_metrics.cc b/chrome_frame/crash_reporting/crash_metrics.cc
index 2759e5d..8909162 100644
--- a/chrome_frame/crash_reporting/crash_metrics.cc
+++ b/chrome_frame/crash_reporting/crash_metrics.cc
@@ -30,16 +30,19 @@ bool CrashMetricsReporter::SetMetric(Metric metric, int value) {
DCHECK(metric >= NAVIGATION_COUNT && metric <= LAST_METRIC);
base::win::RegKey metric_key;
- if (metric_key.Create(HKEY_CURRENT_USER, kChromeFrameMetricsKey,
- KEY_SET_VALUE)) {
- if (metric_key.WriteValue(g_metric_names[metric], value)) {
+ LONG result = metric_key.Create(HKEY_CURRENT_USER, kChromeFrameMetricsKey,
+ KEY_SET_VALUE);
+ if (result == ERROR_SUCCESS) {
+ result = metric_key.WriteValue(g_metric_names[metric], value);
+ if (result == ERROR_SUCCESS) {
return true;
} else {
DLOG(ERROR) << "Failed to read ChromeFrame metric:"
- << g_metric_names[metric];
+ << g_metric_names[metric] << " error: " << result;
}
} else {
- DLOG(ERROR) << "Failed to create ChromeFrame metrics key";
+ DLOG(ERROR) << "Failed to create ChromeFrame metrics key. error: "
+ << result;
}
return false;
}
@@ -50,13 +53,11 @@ int CrashMetricsReporter::GetMetric(Metric metric) {
int ret = 0;
base::win::RegKey metric_key;
if (metric_key.Open(HKEY_CURRENT_USER, kChromeFrameMetricsKey,
- KEY_QUERY_VALUE)) {
- int value = 0;
- if (metric_key.ReadValueDW(g_metric_names[metric],
- reinterpret_cast<DWORD*>(&value))) {
- ret = value;
- }
+ KEY_QUERY_VALUE) == ERROR_SUCCESS) {
+ metric_key.ReadValueDW(g_metric_names[metric],
+ reinterpret_cast<DWORD*>(&ret));
}
+
return ret;
}