diff options
-rw-r--r-- | libs/binder/ndk/include_cpp/android/binder_parcelable_utils.h | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/libs/binder/ndk/include_cpp/android/binder_parcelable_utils.h b/libs/binder/ndk/include_cpp/android/binder_parcelable_utils.h index dfcf4dc26f..4858514164 100644 --- a/libs/binder/ndk/include_cpp/android/binder_parcelable_utils.h +++ b/libs/binder/ndk/include_cpp/android/binder_parcelable_utils.h @@ -82,13 +82,13 @@ class AParcelableHolder { } template <typename T> - bool setParcelable(T* p) { - if (p && this->mStability > T::_aidl_stability) { + bool setParcelable(const T& p) { + if (this->mStability > T::_aidl_stability) { return false; } AParcel_reset(mParcel.get()); AParcel_writeString(mParcel.get(), T::descriptor, strlen(T::descriptor)); - p->writeToParcel(mParcel.get()); + p.writeToParcel(mParcel.get()); return true; } @@ -112,6 +112,8 @@ class AParcelableHolder { return std::move(ret); } + void reset() { AParcel_reset(mParcel.get()); } + private: mutable ndk::ScopedAParcel mParcel; parcelable_stability_t mStability; |