diff options
| -rw-r--r-- | libs/nativewindow/include/android/hardware_buffer_aidl.h | 22 | ||||
| -rw-r--r-- | services/sensorservice/aidl/SensorManager.cpp | 5 |
2 files changed, 22 insertions, 5 deletions
diff --git a/libs/nativewindow/include/android/hardware_buffer_aidl.h b/libs/nativewindow/include/android/hardware_buffer_aidl.h index e269f0dddf..3f77c78096 100644 --- a/libs/nativewindow/include/android/hardware_buffer_aidl.h +++ b/libs/nativewindow/include/android/hardware_buffer_aidl.h @@ -95,14 +95,22 @@ public: binder_status_t readFromParcel(const AParcel* _Nonnull parcel) { reset(); - return AHardwareBuffer_readFromParcel(parcel, &mBuffer); + if (__builtin_available(android __ANDROID_API_U__, *)) { + return AHardwareBuffer_readFromParcel(parcel, &mBuffer); + } else { + return STATUS_FAILED_TRANSACTION; + } } binder_status_t writeToParcel(AParcel* _Nonnull parcel) const { if (!mBuffer) { return STATUS_BAD_VALUE; } - return AHardwareBuffer_writeToParcel(mBuffer, parcel); + if (__builtin_available(android __ANDROID_API_U__, *)) { + return AHardwareBuffer_writeToParcel(mBuffer, parcel); + } else { + return STATUS_FAILED_TRANSACTION; + } } /** @@ -150,9 +158,13 @@ public: if (!mBuffer) { return "<HardwareBuffer: Invalid>"; } - uint64_t id = 0; - AHardwareBuffer_getId(mBuffer, &id); - return "<HardwareBuffer " + std::to_string(id) + ">"; + if (__builtin_available(android __ANDROID_API_S__, *)) { + uint64_t id = 0; + AHardwareBuffer_getId(mBuffer, &id); + return "<HardwareBuffer " + std::to_string(id) + ">"; + } else { + return "<HardwareBuffer (unknown)>"; + } } private: diff --git a/services/sensorservice/aidl/SensorManager.cpp b/services/sensorservice/aidl/SensorManager.cpp index 9b0334443b..ee4c5f819c 100644 --- a/services/sensorservice/aidl/SensorManager.cpp +++ b/services/sensorservice/aidl/SensorManager.cpp @@ -197,6 +197,11 @@ ndk::ScopedAStatus SensorManagerAidl::getSensorList(std::vector<SensorInfo>* _ai sp<Looper> SensorManagerAidl::getLooper() { std::lock_guard<std::mutex> lock(mThreadMutex); + if (!mJavaVm) { + LOG(ERROR) << "No Java VM. This must be running in a test or fuzzer."; + return mLooper; + } + if (!mPollThread.joinable()) { // if thread not initialized, start thread mStopThread = false; |