Index: chrome/browser/sync_file_system/drive_backend/sync_engine.cc |
diff --git a/chrome/browser/sync_file_system/drive_backend/sync_engine.cc b/chrome/browser/sync_file_system/drive_backend/sync_engine.cc |
index 0607df8867501b150571245bcf59ba8732890e79..82a03c753eac88eef7a8134e0945c31b5b5b0d86 100644 |
--- a/chrome/browser/sync_file_system/drive_backend/sync_engine.cc |
+++ b/chrome/browser/sync_file_system/drive_backend/sync_engine.cc |
@@ -193,11 +193,15 @@ void SyncEngine::Initialize(const base::FilePath& base_dir, |
new WorkerObserver(base::MessageLoopProxy::current(), |
weak_ptr_factory_.GetWeakPtr())); |
+ base::WeakPtr<ExtensionServiceInterface> extension_service_weak_ptr; |
+ if (extension_service_) |
+ extension_service_weak_ptr = extension_service_->AsWeakPtr(); |
+ |
// TODO(peria): Use PostTask on |worker_task_runner_| to call this function. |
sync_worker_ = SyncWorker::CreateOnWorker( |
base_dir, |
worker_observer_.get(), |
- extension_service_, |
+ extension_service_weak_ptr, |
sync_engine_context.Pass(), |
env_override); |