Fix some Tuner JNI/Client issues found with CTS
Test: atest android.media.tv.tuner.cts
Bug: 181088182
Change-Id: I29249ed270eb9bbea6447cde094fc83af1fef815
diff --git a/media/jni/tuner/FrontendClient.cpp b/media/jni/tuner/FrontendClient.cpp
index f400a71..f54e266 100644
--- a/media/jni/tuner/FrontendClient.cpp
+++ b/media/jni/tuner/FrontendClient.cpp
@@ -588,14 +588,15 @@
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));
}
- hidlStatus.push_back(status);
+ if (codeRates.size() > 0) {
+ status.codeRates(codeRates);
+ hidlStatus.push_back(status);
+ }
break;
}
case TunerFrontendStatus::bandwidth: {