diff --git a/base/src/parcel.cpp b/base/src/parcel.cpp index 855f7cf..c3b6a98 100644 --- a/base/src/parcel.cpp +++ b/base/src/parcel.cpp @@ -626,7 +626,8 @@ bool Parcel::WriteRemoteObject(const Parcelable *object) WriteObjectOffset(placeholder); if (object->TestBehavior(Parcelable::BehaviorFlag::HOLD_OBJECT)) { - objectHolder_.push_back(const_cast(object)); + sptr tmp(const_cast(object)); + objectHolder_.push_back(tmp); } return true;