summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Wachenschwanz <mwachens@google.com>2019-10-15 11:49:22 -0700
committerandroid-build-team Robot <android-build-team-robot@google.com>2019-12-18 06:24:24 +0000
commit2883702824321b6b072834264fa173f2d30cbd01 (patch)
treec1188f7619cefb5b78a13fad7cb77b3ddeee3f76
parent57c282fa3b440b53e0a7bc88d84fcc6b7c828065 (diff)
downloadnative-2883702824321b6b072834264fa173f2d30cbd01.tar.gz
Resize object capacity when shrinking Parcel
Bug: 140419401 Test: atest android.os.cts.ParcelTest Change-Id: I04edee415e1984ba5fb97c5c1b09892a360cf221 (cherry picked from commit c67d9f33b36cbb95b121d058f51d6653f1ec4334) (cherry picked from commit d9d10dbdf2f20af3dd01376d2130c71c052e42f3)
-rw-r--r--libs/binder/Parcel.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/libs/binder/Parcel.cpp b/libs/binder/Parcel.cpp
index afa3d33349..5ad30271d7 100644
--- a/libs/binder/Parcel.cpp
+++ b/libs/binder/Parcel.cpp
@@ -2839,11 +2839,13 @@ status_t Parcel::continueWrite(size_t desired)
if (objectsSize == 0) {
free(mObjects);
mObjects = nullptr;
+ mObjectsCapacity = 0;
} else {
binder_size_t* objects =
(binder_size_t*)realloc(mObjects, objectsSize*sizeof(binder_size_t));
if (objects) {
mObjects = objects;
+ mObjectsCapacity = objectsSize;
}
}
mObjectsSize = objectsSize;