summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCraig Mautner <cmautner@google.com>2014-12-04 01:56:39 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2014-12-04 01:56:39 +0000
commite879b2ae69bf7ef159dbdc068423526d5db99df0 (patch)
tree57bb5e3f7c8f59a44e2ff0ffb5b5621c373ba6a3
parentccce6e0f9f6f4da95d61fb2cfb1253ac662fba30 (diff)
parent4472fa97800fb20b045f1907372f75d2b37b137e (diff)
downloadbase-e879b2ae69bf7ef159dbdc068423526d5db99df0.tar.gz
Merge "Prevent ANR when broadcast receiver is killed"
-rw-r--r--services/core/java/com/android/server/am/BroadcastQueue.java2
1 files changed, 1 insertions, 1 deletions
diff --git a/services/core/java/com/android/server/am/BroadcastQueue.java b/services/core/java/com/android/server/am/BroadcastQueue.java
index 3b774e17730b..9b7d0b2eb293 100644
--- a/services/core/java/com/android/server/am/BroadcastQueue.java
+++ b/services/core/java/com/android/server/am/BroadcastQueue.java
@@ -296,7 +296,7 @@ public final class BroadcastQueue {
public void skipCurrentReceiverLocked(ProcessRecord app) {
boolean reschedule = false;
BroadcastRecord r = app.curReceiver;
- if (r != null) {
+ if (r != null && r.queue == this) {
// The current broadcast is waiting for this app's receiver
// to be finished. Looks like that's not going to happen, so
// let the broadcast continue.