summaryrefslogtreecommitdiff
path: root/media/jni/tuner/FrontendClient.cpp
diff options
context:
space:
mode:
authorScott Lobdell <slobdell@google.com>2021-03-23 20:33:04 +0000
committerScott Lobdell <slobdell@google.com>2021-03-24 02:40:01 +0000
commit757dbb836469bbdd7eb8312deaf584fe0c99c17d (patch)
treea678b33ad5f0f024d0f942f127b91665f0616193 /media/jni/tuner/FrontendClient.cpp
parent7710a95746be8dba8c6ffe7172f9c01334a2ca81 (diff)
parentf022dd1e6827ebf7c52b06aa40f2059a3f0f5cad (diff)
Merge SP1A.210311.001
Change-Id: Id1a205bf3f0609c0b13e4bea377056c3b06299fa
Diffstat (limited to 'media/jni/tuner/FrontendClient.cpp')
-rw-r--r--media/jni/tuner/FrontendClient.cpp30
1 files changed, 14 insertions, 16 deletions
diff --git a/media/jni/tuner/FrontendClient.cpp b/media/jni/tuner/FrontendClient.cpp
index 9e3664275dac..f54e2663843c 100644
--- a/media/jni/tuner/FrontendClient.cpp
+++ b/media/jni/tuner/FrontendClient.cpp
@@ -78,8 +78,6 @@ namespace android {
FrontendClient::FrontendClient(shared_ptr<ITunerFrontend> tunerFrontend, int type) {
mTunerFrontend = tunerFrontend;
- mAidlCallback = NULL;
- mHidlCallback = NULL;
mType = type;
}
@@ -87,22 +85,21 @@ FrontendClient::~FrontendClient() {
mTunerFrontend = NULL;
mFrontend = NULL;
mFrontend_1_1 = NULL;
- mAidlCallback = NULL;
- mHidlCallback = NULL;
mId = -1;
mType = -1;
}
Result FrontendClient::setCallback(sp<FrontendClientCallback> frontendClientCallback) {
if (mTunerFrontend != NULL) {
- mAidlCallback = ::ndk::SharedRefBase::make<TunerFrontendCallback>(frontendClientCallback);
- mAidlCallback->setFrontendType(mType);
- Status s = mTunerFrontend->setCallback(mAidlCallback);
+ shared_ptr<TunerFrontendCallback> aidlCallback =
+ ::ndk::SharedRefBase::make<TunerFrontendCallback>(frontendClientCallback);
+ aidlCallback->setFrontendType(mType);
+ Status s = mTunerFrontend->setCallback(aidlCallback);
return ClientHelper::getServiceSpecificErrorCode(s);
}
- mHidlCallback = new HidlFrontendCallback(frontendClientCallback);
- return mFrontend->setCallback(mHidlCallback);
+ sp<HidlFrontendCallback> hidlCallback = new HidlFrontendCallback(frontendClientCallback);
+ return mFrontend->setCallback(hidlCallback);
}
void FrontendClient::setHidlFrontend(sp<IFrontend> frontend) {
@@ -591,14 +588,15 @@ vector<FrontendStatusExt1_1> FrontendClient::getHidlStatusExt(
break;
}
case TunerFrontendStatus::codeRates: {
- int size = s.get<TunerFrontendStatus::codeRates>().size();
- status.codeRates().resize(size);
- for (int i = 0; i < size; i++) {
- auto aidlCodeRate = s.get<TunerFrontendStatus::codeRates>()[i];
- status.codeRates()[i] =
- static_cast<hardware::tv::tuner::V1_1::FrontendInnerFec>(aidlCodeRate);
+ vector<hardware::tv::tuner::V1_1::FrontendInnerFec> codeRates;
+ for (auto aidlCodeRate : s.get<TunerFrontendStatus::codeRates>()) {
+ codeRates.push_back(
+ static_cast<hardware::tv::tuner::V1_1::FrontendInnerFec>(aidlCodeRate));
+ }
+ if (codeRates.size() > 0) {
+ status.codeRates(codeRates);
+ hidlStatus.push_back(status);
}
- hidlStatus.push_back(status);
break;
}
case TunerFrontendStatus::bandwidth: {