diff --git a/media/jni/tuner/LnbClient.cpp b/media/jni/tuner/LnbClient.cpp index 77583b8032c80..df3fd609d72fc 100644 --- a/media/jni/tuner/LnbClient.cpp +++ b/media/jni/tuner/LnbClient.cpp @@ -51,8 +51,12 @@ Result LnbClient::setCallback(sp cb) { return TunerClient::getServiceSpecificErrorCode(s); } - mHidlCallback = new HidlLnbCallback(cb); - return mLnb->setCallback(mHidlCallback); + if (mLnb != NULL) { + mHidlCallback = new HidlLnbCallback(cb); + return mLnb->setCallback(mHidlCallback); + } + + return Result::INVALID_STATE; } Result LnbClient::setVoltage(LnbVoltage voltage) { diff --git a/media/jni/tuner/TunerClient.cpp b/media/jni/tuner/TunerClient.cpp index 498ba0eabb70e..73a2cf29d50e2 100644 --- a/media/jni/tuner/TunerClient.cpp +++ b/media/jni/tuner/TunerClient.cpp @@ -37,7 +37,9 @@ int TunerClient::mTunerVersion; TunerClient::TunerClient() { // Get HIDL Tuner in migration stage. getHidlTuner(); - updateTunerResources(); + if (mTuner != NULL) { + updateTunerResources(); + } // Connect with Tuner Service. ::ndk::SpAIBinder binder(AServiceManager_getService("media.tuner")); mTunerService = ITunerService::fromBinder(binder); @@ -45,6 +47,9 @@ TunerClient::TunerClient() { mTunerService = NULL; if (mTunerService == NULL) { ALOGE("Failed to get tuner service"); + } else { + // TODO: b/178124017 update TRM in TunerService independently. + mTunerService->updateTunerResources(); } } @@ -60,10 +65,8 @@ vector TunerClient::getFrontendIds() { if (mTunerService != NULL) { vector v; - int aidl_return; - Status s = mTunerService->getFrontendIds(&v, &aidl_return); - if (!s.isOk() || aidl_return != (int) Result::SUCCESS - || v.size() == 0) { + Status s = mTunerService->getFrontendIds(&v); + if (getServiceSpecificErrorCode(s) != Result::SUCCESS || v.size() == 0) { ids.clear(); return ids; }