Add read/write for List<ParcelFileDescriptor> in Java
While ParcelableFileDescriptor is built-in type, it IS a parcelable. So
we can treat it just like defined parcelable types when reading/writing.
Bug: 171229850
Test: aidl_unittests / aidl_integration_test
Change-Id: I2fac70a80a39ce0ccae5c91b09e4d331333ec758
diff --git a/aidl_unittest.cpp b/aidl_unittest.cpp
index 16356ae..60f99ef 100644
--- a/aidl_unittest.cpp
+++ b/aidl_unittest.cpp
@@ -120,6 +120,7 @@
else {
_aidl_parcel.writeInt(0);
}
+ _aidl_parcel.writeTypedList(fds);
int _aidl_end_pos = _aidl_parcel.dataPosition();
_aidl_parcel.setDataPosition(_aidl_start_pos);
_aidl_parcel.writeInt(_aidl_end_pos - _aidl_start_pos);
@@ -142,6 +143,7 @@
fd = null;
}
if (_aidl_parcel.dataPosition() - _aidl_start_pos >= _aidl_parcelable_size) return;
+ fds = _aidl_parcel.createTypedArrayList(android.os.ParcelFileDescriptor.CREATOR);
if (_aidl_parcel.dataPosition() - _aidl_start_pos >= _aidl_parcelable_size) return;
} finally {
if (_aidl_start_pos > (Integer.MAX_VALUE - _aidl_parcelable_size)) {