diff options
| author | Daniel Karlberg <daniel.karlberg@sonymobile.com> | 2012-08-15 10:00:41 +0200 |
|---|---|---|
| committer | Johan Redestig <johan.redestig@sonymobile.com> | 2013-07-26 18:19:48 +0000 |
| commit | 8014cbffad1e74814ddd0a98ee5954d8bf3a6c03 (patch) | |
| tree | 63cc155569230ad5966266457637dc24545d470b /core/java/android/content/AbstractThreadedSyncAdapter.java | |
| parent | d547bcec5634f99195a2b12522b6977f61c40d55 (diff) | |
Fixed a leaked partial wakelock in AbstractThreadedSyncAdapter.
This fix ensures that onFinished() is always called in a syncClient
even if the application lacks the READ_SYNC_SETTINGS permission.
Change-Id: I944717e71ceae06a665f8a3b1199b41d73e12da4
Diffstat (limited to 'core/java/android/content/AbstractThreadedSyncAdapter.java')
| -rw-r--r-- | core/java/android/content/AbstractThreadedSyncAdapter.java | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/core/java/android/content/AbstractThreadedSyncAdapter.java b/core/java/android/content/AbstractThreadedSyncAdapter.java index bafe67d619f3..898cc4e7a1e2 100644 --- a/core/java/android/content/AbstractThreadedSyncAdapter.java +++ b/core/java/android/content/AbstractThreadedSyncAdapter.java @@ -160,10 +160,13 @@ public abstract class AbstractThreadedSyncAdapter { if (mAutoInitialize && extras != null && extras.getBoolean(ContentResolver.SYNC_EXTRAS_INITIALIZE, false)) { - if (ContentResolver.getIsSyncable(account, authority) < 0) { - ContentResolver.setIsSyncable(account, authority, 1); + try { + if (ContentResolver.getIsSyncable(account, authority) < 0) { + ContentResolver.setIsSyncable(account, authority, 1); + } + } finally { + syncContextClient.onFinished(new SyncResult()); } - syncContextClient.onFinished(new SyncResult()); return; } SyncThread syncThread = new SyncThread( |
