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

Side by Side Diff: chrome/browser/sync/profile_sync_service.cc

Issue 7778033: Add trace code to track all posted tasks in message_loop. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 3 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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/sync/profile_sync_service.h" 5 #include "chrome/browser/sync/profile_sync_service.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <map> 8 #include <map>
9 #include <set> 9 #include <set>
10 #include <utility> 10 #include <utility>
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 131
132 void ProfileSyncService::Initialize() { 132 void ProfileSyncService::Initialize() {
133 InitSettings(); 133 InitSettings();
134 RegisterPreferences(); 134 RegisterPreferences();
135 135
136 // We clear this here (vs Shutdown) because we want to remember that an error 136 // We clear this here (vs Shutdown) because we want to remember that an error
137 // happened on shutdown so we can display details (message, location) about it 137 // happened on shutdown so we can display details (message, location) about it
138 // in about:sync. 138 // in about:sync.
139 unrecoverable_error_detected_ = false; 139 unrecoverable_error_detected_ = false;
140 unrecoverable_error_message_.clear(); 140 unrecoverable_error_message_.clear();
141 unrecoverable_error_location_.reset(); 141 unrecoverable_error_location_ = tracked_objects::Location();
142 142
143 // Watch the preference that indicates sync is managed so we can take 143 // Watch the preference that indicates sync is managed so we can take
144 // appropriate action. 144 // appropriate action.
145 pref_sync_managed_.Init(prefs::kSyncManaged, profile_->GetPrefs(), this); 145 pref_sync_managed_.Init(prefs::kSyncManaged, profile_->GetPrefs(), this);
146 146
147 // For now, the only thing we can do through policy is to turn sync off. 147 // For now, the only thing we can do through policy is to turn sync off.
148 if (IsManaged()) { 148 if (IsManaged()) {
149 DisableForUser(); 149 DisableForUser();
150 return; 150 return;
151 } 151 }
(...skipping 435 matching lines...) Expand 10 before | Expand all | Expand 10 after
587 NOTREACHED(); 587 NOTREACHED();
588 } 588 }
589 589
590 // An invariant has been violated. Transition to an error state where we try 590 // An invariant has been violated. Transition to an error state where we try
591 // to do as little work as possible, to avoid further corruption or crashes. 591 // to do as little work as possible, to avoid further corruption or crashes.
592 void ProfileSyncService::OnUnrecoverableError( 592 void ProfileSyncService::OnUnrecoverableError(
593 const tracked_objects::Location& from_here, 593 const tracked_objects::Location& from_here,
594 const std::string& message) { 594 const std::string& message) {
595 unrecoverable_error_detected_ = true; 595 unrecoverable_error_detected_ = true;
596 unrecoverable_error_message_ = message; 596 unrecoverable_error_message_ = message;
597 unrecoverable_error_location_.reset( 597 unrecoverable_error_location_ = from_here;
598 new tracked_objects::Location(from_here.function_name(),
599 from_here.file_name(),
600 from_here.line_number(),
601 from_here.program_counter()));
602 598
603 // Tell the wizard so it can inform the user only if it is already open. 599 // Tell the wizard so it can inform the user only if it is already open.
604 wizard_.Step(SyncSetupWizard::FATAL_ERROR); 600 wizard_.Step(SyncSetupWizard::FATAL_ERROR);
605 601
606 NotifyObservers(); 602 NotifyObservers();
607 LOG(ERROR) << "Unrecoverable error detected -- ProfileSyncService unusable." 603 LOG(ERROR) << "Unrecoverable error detected -- ProfileSyncService unusable."
608 << message; 604 << message;
609 std::string location; 605 std::string location;
610 from_here.Write(true, true, &location); 606 from_here.Write(true, true, &location);
611 LOG(ERROR) << location; 607 LOG(ERROR) << location;
(...skipping 962 matching lines...) Expand 10 before | Expand all | Expand 10 after
1574 *profile_->GetPrefs()->GetList(prefs::kAcknowledgedSyncTypes)); 1570 *profile_->GetPrefs()->GetList(prefs::kAcknowledgedSyncTypes));
1575 syncable::ModelTypeSet registered; 1571 syncable::ModelTypeSet registered;
1576 GetRegisteredDataTypes(&registered); 1572 GetRegisteredDataTypes(&registered);
1577 syncable::ModelTypeBitSet registered_bit_set = 1573 syncable::ModelTypeBitSet registered_bit_set =
1578 syncable::ModelTypeBitSetFromSet(registered); 1574 syncable::ModelTypeBitSetFromSet(registered);
1579 unacknowledged = registered_bit_set & ~acknowledged; 1575 unacknowledged = registered_bit_set & ~acknowledged;
1580 } 1576 }
1581 return unacknowledged; 1577 return unacknowledged;
1582 } 1578 }
1583 1579
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698