diff --git a/services/core/java/com/android/server/wm/TaskSnapshotPersister.java b/services/core/java/com/android/server/wm/TaskSnapshotPersister.java index 0287070047736..866bfc015a5f4 100644 --- a/services/core/java/com/android/server/wm/TaskSnapshotPersister.java +++ b/services/core/java/com/android/server/wm/TaskSnapshotPersister.java @@ -209,11 +209,12 @@ class TaskSnapshotPersister { SystemClock.sleep(DELAY_MS); } synchronized (mLock) { - if (!mWriteQueue.isEmpty()) { + final boolean writeQueueEmpty = mWriteQueue.isEmpty(); + if (!writeQueueEmpty && !mPaused) { continue; } try { - mQueueIdling = true; + mQueueIdling = writeQueueEmpty; mLock.wait(); mQueueIdling = false; } catch (InterruptedException e) {