Index: chrome/browser/sync_file_system/drive_file_sync_service.cc |
diff --git a/chrome/browser/sync_file_system/drive_file_sync_service.cc b/chrome/browser/sync_file_system/drive_file_sync_service.cc |
index 1ab7c8e6823a477dad3e6cf3bae1c89d11ad724a..d7a1d34b3b2e3a99adf09bb681107a7a20c2ab77 100644 |
--- a/chrome/browser/sync_file_system/drive_file_sync_service.cc |
+++ b/chrome/browser/sync_file_system/drive_file_sync_service.cc |
@@ -139,6 +139,7 @@ DriveFileSyncService::DriveFileSyncService(Profile* profile) |
token_.reset(new TaskToken(AsWeakPtr())); |
sync_client_.reset(new DriveFileSyncClient(profile)); |
+ sync_client_->AddObserver(this); |
metadata_store_.reset(new DriveMetadataStore( |
profile->GetPath(), |
@@ -155,6 +156,7 @@ DriveFileSyncService::~DriveFileSyncService() { |
// Invalidate WeakPtr instances here explicitly to notify TaskToken that we |
// can safely discard the token. |
weak_factory_.InvalidateWeakPtrs(); |
+ sync_client_->RemoveObserver(this); |
token_.reset(); |
} |
@@ -372,6 +374,12 @@ void DriveFileSyncService::ApplyLocalChange( |
callback, fileapi::SYNC_STATUS_FAILED); |
} |
+void DriveFileSyncService::OnAuthenticated() { |
+ FOR_EACH_OBSERVER( |
+ Observer, observers_, |
+ OnRemoteServiceStateUpdated(REMOTE_SERVICE_OK, "Authenticated")); |
+} |
+ |
// Called by CreateForTesting. |
DriveFileSyncService::DriveFileSyncService( |
scoped_ptr<DriveFileSyncClient> sync_client, |