| Index: chrome/browser/sync/glue/ui_model_worker.h
|
| diff --git a/chrome/browser/sync/glue/ui_model_worker.h b/chrome/browser/sync/glue/ui_model_worker.h
|
| index a9d35bdd50068f26d7052e01a497b71f790e9e6a..1a1468e5895992bdaf056e9df52d0bf04cb3d2ac 100644
|
| --- a/chrome/browser/sync/glue/ui_model_worker.h
|
| +++ b/chrome/browser/sync/glue/ui_model_worker.h
|
| @@ -11,6 +11,7 @@
|
| #include "base/synchronization/lock.h"
|
| #include "base/task.h"
|
| #include "chrome/browser/sync/engine/model_safe_worker.h"
|
| +#include "chrome/browser/sync/sessions/unrecoverable_error_info.h"
|
|
|
| namespace base {
|
| class WaitableEvent;
|
| @@ -36,10 +37,13 @@ class UIModelWorker : public browser_sync::ModelSafeWorker {
|
| // A simple task to signal a waitable event after Run()ning a Closure.
|
| class CallDoWorkAndSignalTask : public Task {
|
| public:
|
| - CallDoWorkAndSignalTask(Callback0::Type* work,
|
| - base::WaitableEvent* work_done,
|
| - UIModelWorker* scheduler)
|
| - : work_(work), work_done_(work_done), scheduler_(scheduler) {
|
| + CallDoWorkAndSignalTask(
|
| + Callback1<sessions::UnrecoverableErrorInfo*>::Type* work,
|
| + base::WaitableEvent* work_done,
|
| + UIModelWorker* scheduler,
|
| + sessions::UnrecoverableErrorInfo* error_info)
|
| + : work_(work), work_done_(work_done), scheduler_(scheduler),
|
| + error_info_(error_info) {
|
| }
|
| virtual ~CallDoWorkAndSignalTask() { }
|
|
|
| @@ -49,12 +53,14 @@ class UIModelWorker : public browser_sync::ModelSafeWorker {
|
| private:
|
| // Task data - a closure and a waitable event to signal after the work has
|
| // been done.
|
| - Callback0::Type* work_;
|
| + Callback1<sessions::UnrecoverableErrorInfo*>::Type* work_;
|
| base::WaitableEvent* work_done_;
|
|
|
| // The UIModelWorker responsible for scheduling us.
|
| UIModelWorker* const scheduler_;
|
|
|
| + sessions::UnrecoverableErrorInfo* error_info_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(CallDoWorkAndSignalTask);
|
| };
|
|
|
| @@ -65,7 +71,8 @@ class UIModelWorker : public browser_sync::ModelSafeWorker {
|
| void Stop();
|
|
|
| // ModelSafeWorker implementation. Called on syncapi SyncerThread.
|
| - virtual void DoWorkAndWaitUntilDone(Callback0::Type* work);
|
| + virtual sessions::UnrecoverableErrorInfo DoWorkAndWaitUntilDone(
|
| + Callback1<sessions::UnrecoverableErrorInfo*>::Type* work) OVERRIDE;
|
| virtual ModelSafeGroup GetModelSafeGroup();
|
|
|
| // Upon receiving this idempotent call, the ModelSafeWorker can
|
|
|