| #include <android/aidl/tests/DeprecatedParcelable.h> |
| |
| namespace android { |
| |
| namespace aidl { |
| |
| namespace tests { |
| |
| ::android::status_t DeprecatedParcelable::readFromParcel(const ::android::Parcel* _aidl_parcel) { |
| ::android::status_t _aidl_ret_status = ::android::OK; |
| [[maybe_unused]] size_t _aidl_start_pos = _aidl_parcel->dataPosition(); |
| int32_t _aidl_parcelable_raw_size = _aidl_parcel->readInt32(); |
| if (_aidl_parcelable_raw_size < 0) return ::android::BAD_VALUE; |
| [[maybe_unused]] size_t _aidl_parcelable_size = static_cast<size_t>(_aidl_parcelable_raw_size); |
| if (_aidl_start_pos > SIZE_MAX - _aidl_parcelable_size) return ::android::BAD_VALUE; |
| _aidl_parcel->setDataPosition(_aidl_start_pos + _aidl_parcelable_size); |
| return _aidl_ret_status; |
| } |
| |
| ::android::status_t DeprecatedParcelable::writeToParcel(::android::Parcel* _aidl_parcel) const { |
| ::android::status_t _aidl_ret_status = ::android::OK; |
| auto _aidl_start_pos = _aidl_parcel->dataPosition(); |
| _aidl_parcel->writeInt32(0); |
| auto _aidl_end_pos = _aidl_parcel->dataPosition(); |
| _aidl_parcel->setDataPosition(_aidl_start_pos); |
| _aidl_parcel->writeInt32(_aidl_end_pos - _aidl_start_pos); |
| _aidl_parcel->setDataPosition(_aidl_end_pos); |
| return _aidl_ret_status; |
| } |
| |
| } // namespace tests |
| |
| } // namespace aidl |
| |
| } // namespace android |