diff options
author | Treehugger Robot <treehugger-gerrit@google.com> | 2020-12-30 12:22:57 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2020-12-30 12:22:57 +0000 |
commit | 1f07b60a756cce795332bfbbd1f87dac4916055e (patch) | |
tree | 2bf92da88ed938beabb4273657437cd76740228a /media/java | |
parent | 4b7054b9c034a24d078758df045dfc8e09cbdf1c (diff) | |
parent | acb16468cbc03c16cc459fb98111a3ce0fc8e9a1 (diff) |
Merge "Release resource before send MSG_RESOURCE_LOST message to TIS" am: eb709b6d88 am: acb16468cb
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1536908
MUST ONLY BE SUBMITTED BY AUTOMERGER
Change-Id: I7b2b70e789fd7e2247d246d1c4718d971e791cdc
Diffstat (limited to 'media/java')
-rw-r--r-- | media/java/android/media/tv/tuner/Tuner.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/media/java/android/media/tv/tuner/Tuner.java b/media/java/android/media/tv/tuner/Tuner.java index 8bf688dba10b..e148d0e29b5a 100644 --- a/media/java/android/media/tv/tuner/Tuner.java +++ b/media/java/android/media/tv/tuner/Tuner.java @@ -362,6 +362,11 @@ public class Tuner implements AutoCloseable { */ @Override public void close() { + releaseAll(); + TunerUtils.throwExceptionForResult(nativeClose(), "failed to close tuner"); + } + + private void releaseAll() { if (mFrontendHandle != null) { int res = nativeCloseFrontend(mFrontendHandle); if (res != Tuner.RESULT_SUCCESS) { @@ -396,9 +401,9 @@ public class Tuner implements AutoCloseable { TunerUtils.throwExceptionForResult(res, "failed to close demux"); } mTunerResourceManager.releaseDemux(mDemuxHandle, mClientId); - mFrontendHandle = null; + mDemuxHandle = null; } - TunerUtils.throwExceptionForResult(nativeClose(), "failed to close tuner"); + } /** @@ -495,6 +500,7 @@ public class Tuner implements AutoCloseable { break; } case MSG_RESOURCE_LOST: { + releaseAll(); if (mOnResourceLostListener != null && mOnResourceLostListenerExecutor != null) { mOnResourceLostListenerExecutor.execute( |