diff options
author | kinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-07-08 04:36:43 +0000 |
---|---|---|
committer | kinuko@chromium.org <kinuko@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-07-08 04:36:43 +0000 |
commit | 6f99b280a55076d250e3c26170b86a6f0aba2baa (patch) | |
tree | 1072caafb559981e4cfe073b5e452ddc81813c83 /sync/engine/sync_scheduler_impl.h | |
parent | 155a8d41d07be054fbd1a5adb015c9dbbcaca414 (diff) | |
download | chromium_src-6f99b280a55076d250e3c26170b86a6f0aba2baa.zip chromium_src-6f99b280a55076d250e3c26170b86a6f0aba2baa.tar.gz chromium_src-6f99b280a55076d250e3c26170b86a6f0aba2baa.tar.bz2 |
Revert 210333 "Lock-free shutdown of profile sync service. Chang..."
Suspected to have introduced (flaky) SEGV crash in
ProfileSyncServiceTypedUrlTest.IgnoreLocalhostURL
http://build.chromium.org/p/chromium.chromiumos/builders/Linux%20ChromiumOS%20Tests%20(1)/builds/28925/steps/unit_tests/logs/stdio
http://build.chromium.org/p/chromium.chromiumos/builders/Linux%20ChromiumOS%20Tests%20(dbg)(1)/builds/21682/steps/unit_tests/logs/IgnoreLocalhostURL
http://build.chromium.org/p/chromium.win/builders/Win%207%20Tests%20x64%20%283%29/builds/7252/steps/unit_tests/logs/IgnoreLocalhostURL
> Lock-free shutdown of profile sync service. Changes include:
> * Disconnect non-frontend processor/associator to stop accessing directory
> so that sync backend can be shut down without waiting.
> * Change non-frontend controller so that creation/destruction of
> processor/associator doesn't depend on valid controller. So
> scoped wait on stopping controller can be removed.
> * Move sync thread to PSS. It's created when starting first backend and
> destroyed on last browser thread.
>
> BUG=19757
>
> Review URL: https://chromiumcodereview.appspot.com/16770005
TBR=haitaol@chromium.org
Review URL: https://codereview.chromium.org/18489004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@210346 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'sync/engine/sync_scheduler_impl.h')
-rw-r--r-- | sync/engine/sync_scheduler_impl.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sync/engine/sync_scheduler_impl.h b/sync/engine/sync_scheduler_impl.h index 362d754..5d350a4 100644 --- a/sync/engine/sync_scheduler_impl.h +++ b/sync/engine/sync_scheduler_impl.h @@ -55,7 +55,7 @@ class SYNC_EXPORT_PRIVATE SyncSchedulerImpl virtual void Start(Mode mode) OVERRIDE; virtual bool ScheduleConfiguration( const ConfigurationParams& params) OVERRIDE; - virtual void RequestStop() OVERRIDE; + virtual void RequestStop(const base::Closure& callback) OVERRIDE; virtual void ScheduleLocalNudge( const base::TimeDelta& desired_delay, ModelTypeSet types, @@ -183,7 +183,7 @@ class SYNC_EXPORT_PRIVATE SyncSchedulerImpl bool CanRunNudgeJobNow(JobPriority priority); // 'Impl' here refers to real implementation of public functions. - void StopImpl(); + void StopImpl(const base::Closure& callback); // If the scheduler's current state supports it, this will create a job based // on the passed in parameters and coalesce it with any other pending jobs, |