summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--services/core/java/com/android/server/am/BroadcastProcessQueue.java5
1 files changed, 3 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/am/BroadcastProcessQueue.java b/services/core/java/com/android/server/am/BroadcastProcessQueue.java
index 41d9a11e3eaf..d7cca60b6df4 100644
--- a/services/core/java/com/android/server/am/BroadcastProcessQueue.java
+++ b/services/core/java/com/android/server/am/BroadcastProcessQueue.java
@@ -747,7 +747,7 @@ class BroadcastProcessQueue {
* be delivered at some point in the future.
*/
public boolean isIdle() {
- return !isActive() && isEmpty();
+ return (!isActive() && isEmpty()) || isDeferredUntilActive();
}
/**
@@ -769,7 +769,8 @@ class BroadcastProcessQueue {
final boolean nextOffloadBeyond = (nextOffload == null)
|| ((BroadcastRecord) nextOffload.arg1).enqueueTime > barrierTime;
- return activeBeyond && nextBeyond && nextUrgentBeyond && nextOffloadBeyond;
+ return (activeBeyond && nextBeyond && nextUrgentBeyond && nextOffloadBeyond)
+ || isDeferredUntilActive();
}
public boolean isRunnable() {