diff options
| author | 2023-01-13 21:06:39 +0000 | |
|---|---|---|
| committer | 2023-01-13 21:06:39 +0000 | |
| commit | 16b26358c8f77b4fb78e3fcb51caa795a6d7c8b2 (patch) | |
| tree | 59c2c4cc2b64c24f1293f28380dbde8552df6379 | |
| parent | 9106ef94f00b93decda516fe128dfb05904bbda4 (diff) | |
| parent | 90bb5e565a1d55348b64ffe2d0c12821726cf632 (diff) | |
Merge "BroadcastProcessQueue: fix wait-for-broadcast-barrier/idle"
| -rw-r--r-- | services/core/java/com/android/server/am/BroadcastProcessQueue.java | 5 |
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() { |