diff --git a/core/jni/com_android_internal_os_LongArrayMultiStateCounter.cpp b/core/jni/com_android_internal_os_LongArrayMultiStateCounter.cpp index 6e7ebdabeeb33..0ebf2dddd7ebd 100644 --- a/core/jni/com_android_internal_os_LongArrayMultiStateCounter.cpp +++ b/core/jni/com_android_internal_os_LongArrayMultiStateCounter.cpp @@ -111,17 +111,17 @@ static void native_writeToParcel(JNIEnv *env, jobject self, jlong nativePtr, job jint flags) { battery::LongArrayMultiStateCounter *counter = reinterpret_cast(nativePtr); - AParcel *parcel = AParcel_fromJavaParcel(env, jParcel); + ndk::ScopedAParcel parcel(AParcel_fromJavaParcel(env, jParcel)); uint16_t stateCount = counter->getStateCount(); - THROW_ON_WRITE_ERROR(AParcel_writeInt32(parcel, stateCount)); + THROW_ON_WRITE_ERROR(AParcel_writeInt32(parcel.get(), stateCount)); // LongArrayMultiStateCounter has at least state 0 const std::vector &anyState = counter->getCount(0); - THROW_ON_WRITE_ERROR(AParcel_writeInt32(parcel, anyState.size())); + THROW_ON_WRITE_ERROR(AParcel_writeInt32(parcel.get(), anyState.size())); for (battery::state_t state = 0; state < stateCount; state++) { - THROW_ON_WRITE_ERROR(ndk::AParcel_writeVector(parcel, counter->getCount(state))); + THROW_ON_WRITE_ERROR(ndk::AParcel_writeVector(parcel.get(), counter->getCount(state))); } } @@ -139,13 +139,13 @@ static void throwReadRE(JNIEnv *env, binder_status_t status) { } static jlong native_initFromParcel(JNIEnv *env, jclass theClass, jobject jParcel) { - AParcel *parcel = AParcel_fromJavaParcel(env, jParcel); + ndk::ScopedAParcel parcel(AParcel_fromJavaParcel(env, jParcel)); int32_t stateCount; - THROW_ON_READ_ERROR(AParcel_readInt32(parcel, &stateCount)); + THROW_ON_READ_ERROR(AParcel_readInt32(parcel.get(), &stateCount)); int32_t arrayLength; - THROW_ON_READ_ERROR(AParcel_readInt32(parcel, &arrayLength)); + THROW_ON_READ_ERROR(AParcel_readInt32(parcel.get(), &arrayLength)); battery::LongArrayMultiStateCounter *counter = new battery::LongArrayMultiStateCounter(stateCount, std::vector(arrayLength)); @@ -154,7 +154,7 @@ static jlong native_initFromParcel(JNIEnv *env, jclass theClass, jobject jParcel value.reserve(arrayLength); for (battery::state_t state = 0; state < stateCount; state++) { - THROW_ON_READ_ERROR(ndk::AParcel_readVector(parcel, &value)); + THROW_ON_READ_ERROR(ndk::AParcel_readVector(parcel.get(), &value)); counter->setValue(state, value); } diff --git a/core/jni/com_android_internal_os_LongMultiStateCounter.cpp b/core/jni/com_android_internal_os_LongMultiStateCounter.cpp index 69c4f3ddd9c50..8c69d276fe6a9 100644 --- a/core/jni/com_android_internal_os_LongMultiStateCounter.cpp +++ b/core/jni/com_android_internal_os_LongMultiStateCounter.cpp @@ -120,13 +120,13 @@ static void throwWriteRE(JNIEnv *env, binder_status_t status) { static void native_writeToParcel(JNIEnv *env, jobject self, jlong nativePtr, jobject jParcel, jint flags) { battery::LongMultiStateCounter *counter = asLongMultiStateCounter(nativePtr); - AParcel *parcel = AParcel_fromJavaParcel(env, jParcel); + ndk::ScopedAParcel parcel(AParcel_fromJavaParcel(env, jParcel)); uint16_t stateCount = counter->getStateCount(); - THROW_ON_WRITE_ERROR(AParcel_writeInt32(parcel, stateCount)); + THROW_ON_WRITE_ERROR(AParcel_writeInt32(parcel.get(), stateCount)); for (battery::state_t state = 0; state < stateCount; state++) { - THROW_ON_WRITE_ERROR(AParcel_writeInt64(parcel, counter->getCount(state))); + THROW_ON_WRITE_ERROR(AParcel_writeInt64(parcel.get(), counter->getCount(state))); } } @@ -144,16 +144,16 @@ static void throwReadRE(JNIEnv *env, binder_status_t status) { } static jlong native_initFromParcel(JNIEnv *env, jclass theClass, jobject jParcel) { - AParcel *parcel = AParcel_fromJavaParcel(env, jParcel); + ndk::ScopedAParcel parcel(AParcel_fromJavaParcel(env, jParcel)); int32_t stateCount; - THROW_ON_READ_ERROR(AParcel_readInt32(parcel, &stateCount)); + THROW_ON_READ_ERROR(AParcel_readInt32(parcel.get(), &stateCount)); battery::LongMultiStateCounter *counter = new battery::LongMultiStateCounter(stateCount, 0); for (battery::state_t state = 0; state < stateCount; state++) { int64_t value; - THROW_ON_READ_ERROR(AParcel_readInt64(parcel, &value)); + THROW_ON_READ_ERROR(AParcel_readInt64(parcel.get(), &value)); counter->setValue(state, value); }