diff options
author | lipalani@chromium.org <lipalani@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-12 06:32:26 +0000 |
---|---|---|
committer | lipalani@chromium.org <lipalani@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-12 06:32:26 +0000 |
commit | 3e3912e169b75336f1b00b468d72fdc38debf37a (patch) | |
tree | 5d0c1e0cbee69270055b115848a7b6da7dca0f01 /chrome/browser/sync/glue/ui_data_type_controller.cc | |
parent | d005e9df0f1d5f18206f3e847e525927a10ebeb1 (diff) | |
download | chromium_src-3e3912e169b75336f1b00b468d72fdc38debf37a.zip chromium_src-3e3912e169b75336f1b00b468d72fdc38debf37a.tar.gz chromium_src-3e3912e169b75336f1b00b468d72fdc38debf37a.tar.bz2 |
Now that uploading to breakpad works on all threads add it to all places that we could return an unrecoverable error. Those places include:
1. Failed model association resulting in unrecoverable error being called on DTC.
2. When disabling a single type due to a perdatatype error.
3. Failing to download requested types resulting in unrecoverable error.
BUG=
TEST=
Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=125220
Review URL: http://codereview.chromium.org/9428054
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126102 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/sync/glue/ui_data_type_controller.cc')
-rw-r--r-- | chrome/browser/sync/glue/ui_data_type_controller.cc | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/chrome/browser/sync/glue/ui_data_type_controller.cc b/chrome/browser/sync/glue/ui_data_type_controller.cc index de5ef9e..d48fdda 100644 --- a/chrome/browser/sync/glue/ui_data_type_controller.cc +++ b/chrome/browser/sync/glue/ui_data_type_controller.cc @@ -143,6 +143,8 @@ void UIDataTypeController::Associate() { void UIDataTypeController::StartFailed(StartResult result, const SyncError& error) { DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); + if (IsUnrecoverableResult(result)) + RecordUnrecoverableError(FROM_HERE, "StartFailed"); StopModels(); if (result == ASSOCIATION_FAILED) { state_ = DISABLED; @@ -237,14 +239,6 @@ void UIDataTypeController::OnSingleDatatypeUnrecoverableError( sync_service_->OnDisableDatatype(type(), from_here, message); } -void UIDataTypeController::RecordUnrecoverableError( - const tracked_objects::Location& from_here, - const std::string& message) { - DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); - UMA_HISTOGRAM_ENUMERATION("Sync.DataTypeRunFailures", type(), - syncable::MODEL_TYPE_COUNT); -} - void UIDataTypeController::RecordAssociationTime(base::TimeDelta time) { DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI)); #define PER_DATA_TYPE_MACRO(type_str) \ |