diff options
author | 2021-02-16 05:54:45 +0000 | |
---|---|---|
committer | 2021-02-16 05:54:45 +0000 | |
commit | d145f376ca970dac89559f19df6da8d0ec24741e (patch) | |
tree | 20aa280b428c707086000188fe4f808af7a4f537 | |
parent | 41d65110f5372fbdf6b8af22cd40021c2d34863e (diff) | |
parent | ec3b487f1d506d6b8d5101aec261ad5575303155 (diff) |
Merge "Avoid duplicate closing on Tuner instances" into sc-dev
-rw-r--r-- | media/jni/tuner/DemuxClient.cpp | 5 | ||||
-rw-r--r-- | media/jni/tuner/DescramblerClient.cpp | 8 | ||||
-rw-r--r-- | media/jni/tuner/DvrClient.cpp | 5 | ||||
-rw-r--r-- | media/jni/tuner/FilterClient.cpp | 6 | ||||
-rw-r--r-- | media/jni/tuner/FrontendClient.cpp | 7 | ||||
-rw-r--r-- | media/jni/tuner/LnbClient.cpp | 5 | ||||
-rw-r--r-- | media/jni/tuner/TimeFilterClient.cpp | 5 |
7 files changed, 24 insertions, 17 deletions
diff --git a/media/jni/tuner/DemuxClient.cpp b/media/jni/tuner/DemuxClient.cpp index 748d45808932..359ef364083c 100644 --- a/media/jni/tuner/DemuxClient.cpp +++ b/media/jni/tuner/DemuxClient.cpp @@ -216,14 +216,13 @@ Result DemuxClient::disconnectCiCam() { Result DemuxClient::close() { if (mTunerDemux != NULL) { Status s = mTunerDemux->close(); + mDemux = NULL; return ClientHelper::getServiceSpecificErrorCode(s); } if (mDemux != NULL) { Result res = mDemux->close(); - if (res == Result::SUCCESS) { - mDemux = NULL; - } + mDemux = NULL; return res; } diff --git a/media/jni/tuner/DescramblerClient.cpp b/media/jni/tuner/DescramblerClient.cpp index c9bacda0fa70..07be5cf33764 100644 --- a/media/jni/tuner/DescramblerClient.cpp +++ b/media/jni/tuner/DescramblerClient.cpp @@ -101,14 +101,18 @@ Result DescramblerClient::removePid(DemuxPid pid, sp<FilterClient> optionalSourc Result DescramblerClient::close() { if (mTunerDescrambler != NULL) { Status s = mTunerDescrambler->close(); + mTunerDescrambler = NULL; return ClientHelper::getServiceSpecificErrorCode(s); } if (mDescrambler != NULL) { - return mDescrambler->close(); + Result res = mDescrambler->close(); + mDescrambler = NULL; + return res; } - return Result::INVALID_STATE;} + return Result::INVALID_STATE; +} /////////////// DescramblerClient Helper Methods /////////////////////// diff --git a/media/jni/tuner/DvrClient.cpp b/media/jni/tuner/DvrClient.cpp index 04004858aaee..779318008a9b 100644 --- a/media/jni/tuner/DvrClient.cpp +++ b/media/jni/tuner/DvrClient.cpp @@ -316,14 +316,13 @@ Result DvrClient::flush() { Result DvrClient::close() { if (mTunerDvr != NULL) { Status s = mTunerDvr->close(); + mTunerDvr = NULL; return ClientHelper::getServiceSpecificErrorCode(s); } if (mDvr != NULL) { Result res = mDvr->close(); - if (res == Result::SUCCESS) { - mDvr = NULL; - } + mDvr = NULL; return res; } diff --git a/media/jni/tuner/FilterClient.cpp b/media/jni/tuner/FilterClient.cpp index f61889035432..f31d4651350a 100644 --- a/media/jni/tuner/FilterClient.cpp +++ b/media/jni/tuner/FilterClient.cpp @@ -262,14 +262,14 @@ Result FilterClient::close() { if (mTunerFilter != NULL) { Status s = mTunerFilter->close(); closeAvSharedMemory(); + mTunerFilter = NULL; return ClientHelper::getServiceSpecificErrorCode(s); } if (mFilter != NULL) { Result res = mFilter->close(); - if (res == Result::SUCCESS) { - mFilter = NULL; - } + mFilter = NULL; + mFilter_1_1 = NULL; closeAvSharedMemory(); return res; } diff --git a/media/jni/tuner/FrontendClient.cpp b/media/jni/tuner/FrontendClient.cpp index 0613223bd5dc..9e3664275dac 100644 --- a/media/jni/tuner/FrontendClient.cpp +++ b/media/jni/tuner/FrontendClient.cpp @@ -322,15 +322,14 @@ Result FrontendClient::unlinkCiCamToFrontend(int ciCamId) { Result FrontendClient::close() { if (mTunerFrontend != NULL) { Status s = mTunerFrontend->close(); + mTunerFrontend = NULL; return ClientHelper::getServiceSpecificErrorCode(s); } if (mFrontend != NULL) { Result result = mFrontend->close(); - if (result == Result::SUCCESS) { - mFrontend = NULL; - mFrontend_1_1 = NULL; - } + mFrontend = NULL; + mFrontend_1_1 = NULL; return result; } diff --git a/media/jni/tuner/LnbClient.cpp b/media/jni/tuner/LnbClient.cpp index 8d08c2586b48..5b6e46eba418 100644 --- a/media/jni/tuner/LnbClient.cpp +++ b/media/jni/tuner/LnbClient.cpp @@ -113,11 +113,14 @@ Result LnbClient::sendDiseqcMessage(vector<uint8_t> diseqcMessage) { Result LnbClient::close() { if (mTunerLnb != NULL) { Status s = mTunerLnb->close(); + mTunerLnb = NULL; return ClientHelper::getServiceSpecificErrorCode(s); } if (mLnb != NULL) { - return mLnb->close(); + Result res = mLnb->close(); + mLnb = NULL; + return res; } return Result::INVALID_STATE; diff --git a/media/jni/tuner/TimeFilterClient.cpp b/media/jni/tuner/TimeFilterClient.cpp index 432238d261e5..e123c9f57ce7 100644 --- a/media/jni/tuner/TimeFilterClient.cpp +++ b/media/jni/tuner/TimeFilterClient.cpp @@ -126,11 +126,14 @@ long TimeFilterClient::getSourceTime() { Result TimeFilterClient::close() { if (mTunerTimeFilter != NULL) { Status s = mTunerTimeFilter->close(); + mTunerTimeFilter = NULL; return ClientHelper::getServiceSpecificErrorCode(s); } if (mTimeFilter != NULL) { - return mTimeFilter->close(); + Result res = mTimeFilter->close(); + mTimeFilter = NULL; + return res; } return Result::INVALID_STATE; |