summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/ProgramFragmentFixedFunction.java
diff options
context:
space:
mode:
authorKoji Fukui <koji.fukui@sonymobile.com>2014-02-21 21:31:14 +0900
committerHenrik Baard <henrik.baard@sonymobile.com>2014-07-21 09:53:05 +0200
commit63909886b2e594a9aec27fe6e4e540e97dcde5a6 (patch)
treee8fa00e8954df58d766195f591f491161838f3a0 /rs/java/android/renderscript/ProgramFragmentFixedFunction.java
parent1a3908e95926acd8add3858be571fe23fa9d047a (diff)
Skip broadcasting to a receiver if the receiver seems to be dead
If an application that has a broadcast receiver is killed during broadcasting, thread variable of ProcessRecord becomes null so that IIntentReceiver#performReceive() is called in BroadcastQueue#performReceiveLocked(). But if binder driver has not noticed the death of the application yet, it can't throw DeadObjectException. After that, binder driver notices. But it can't notify DeadObjectException to the caller because performReceive() is async call. So broadcasting keeps on waiting for finishing performReceive() until timeout. This change checks the death of the application before calling performReceive() and skips broadcasting to the receiver if the application has already died. Change-Id: Ifa02b8b1a7e7b6fd314de90fedff5b7a5326825d
Diffstat (limited to 'rs/java/android/renderscript/ProgramFragmentFixedFunction.java')
0 files changed, 0 insertions, 0 deletions