| Index: chrome/browser/sync/profile_sync_service.cc
|
| diff --git a/chrome/browser/sync/profile_sync_service.cc b/chrome/browser/sync/profile_sync_service.cc
|
| index 52aeb7ec24b8c398503d65c3586fdf4283c259cb..9fd0a7a13938af27f7560c81798c1de18a59fa42 100644
|
| --- a/chrome/browser/sync/profile_sync_service.cc
|
| +++ b/chrome/browser/sync/profile_sync_service.cc
|
| @@ -940,7 +940,7 @@ void ProfileSyncService::OnBackendInitialized(
|
| debug_info_listener_ = debug_info_listener;
|
|
|
| if (protocol_event_observers_.might_have_observers()) {
|
| - backend_->SetForwardProtocolEvents(true);
|
| + backend_->RequestBufferedProtocolEventsAndEnableForwarding();
|
| }
|
|
|
| // If we have a cached passphrase use it to decrypt/encrypt data now that the
|
| @@ -2071,17 +2071,15 @@ void ProfileSyncService::AddProtocolEventObserver(
|
| browser_sync::ProtocolEventObserver* observer) {
|
| protocol_event_observers_.AddObserver(observer);
|
| if (backend_) {
|
| - backend_->SetForwardProtocolEvents(
|
| - protocol_event_observers_.might_have_observers());
|
| + backend_->RequestBufferedProtocolEventsAndEnableForwarding();
|
| }
|
| }
|
|
|
| void ProfileSyncService::RemoveProtocolEventObserver(
|
| browser_sync::ProtocolEventObserver* observer) {
|
| protocol_event_observers_.RemoveObserver(observer);
|
| - if (backend_) {
|
| - backend_->SetForwardProtocolEvents(
|
| - protocol_event_observers_.might_have_observers());
|
| + if (backend_ && !protocol_event_observers_.might_have_observers()) {
|
| + backend_->DisableProtocolEventForwarding();
|
| }
|
| }
|
|
|
|
|