summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Yixiao Luo <yixiaoluo@google.com> 2023-11-11 01:10:15 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2023-11-11 01:10:15 +0000
commitef593083c35566097db7eb3bff8e686079b87eca (patch)
treeb6da844609a4f54c188524c1427b56d03451c82a
parentca84501f041c5425e0947e97bbe8a8ac3def3c6a (diff)
parent3d542c2d728026b09335ae5524e30548eb84543e (diff)
Merge "Fix null pointer handling in ag/25316441" into main
-rw-r--r--services/core/jni/tvinput/JTvInputHal.cpp19
1 files changed, 14 insertions, 5 deletions
diff --git a/services/core/jni/tvinput/JTvInputHal.cpp b/services/core/jni/tvinput/JTvInputHal.cpp
index 80427b346f1a..505421e81d3d 100644
--- a/services/core/jni/tvinput/JTvInputHal.cpp
+++ b/services/core/jni/tvinput/JTvInputHal.cpp
@@ -494,12 +494,21 @@ JTvInputHal::ITvInputWrapper::ITvInputWrapper(std::shared_ptr<AidlITvInput>& aid
::ndk::ScopedAStatus JTvInputHal::ITvInputWrapper::setCallback(
const std::shared_ptr<TvInputCallbackWrapper>& in_callback) {
if (mIsHidl) {
- in_callback->aidlTvInputCallback = nullptr;
- return hidlSetCallback(in_callback == nullptr ? nullptr : in_callback->hidlTvInputCallback);
+ if (in_callback == nullptr) {
+ return hidlSetCallback(nullptr);
+ }
+ else {
+ in_callback->aidlTvInputCallback = nullptr;
+ return hidlSetCallback(in_callback->hidlTvInputCallback);
+ }
} else {
- in_callback->hidlTvInputCallback = nullptr;
- return mAidlTvInput->setCallback(in_callback == nullptr ? nullptr
- : in_callback->aidlTvInputCallback);
+ if (in_callback == nullptr) {
+ return mAidlTvInput->setCallback(nullptr);
+ }
+ else {
+ in_callback->hidlTvInputCallback = nullptr;
+ return mAidlTvInput->setCallback(in_callback->aidlTvInputCallback);
+ }
}
}