Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
Commit fd4d0b9c authored by Praveen Chavan's avatar Praveen Chavan Committed by Wonsik Kim
Browse files

Codec2: Detect and release component if the client process terminates

Attach death-notifier to listen to the client process termination
from the HAL process (specifically, register death-recipient with
the remote ComponentListener object).
Invoke release() on component to clean-up the resources gracefully
on client's death.
This avoids race conditions that may result from the listener's
context holding the last-strong-reference and trying to destruct
the component from within one of it's own calling contexts.
( Eg: Component destructor invoked from onWorkDone(..) )

Test:
   simulate delay in /hidl/1.1/utils/Component.cpp::onWorkDone_nb()
   play a video and 'adb shell killall com.google.android.apps.photos'
   Component is released and destroyed

b/175311561

CRs-Fixed: 2787177

Change-Id: I4411a5d6dd82b6e4e12f142610f6fad13aa11994
parent 809b7549
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment