diff options
| author | 2020-02-20 18:05:55 +0000 | |
|---|---|---|
| committer | 2020-02-20 18:05:55 +0000 | |
| commit | ff3a85ec9cd8ca361635603d16033eb54a6886f0 (patch) | |
| tree | 053e1ee6528e57faff6775e28829d14ca52fd7c8 | |
| parent | ab9b94ff24c0f14674123d527ae8b2b8bcedbb76 (diff) | |
| parent | e3768ad7ac2884e8c3f25f1f89dc9014530a6a1a (diff) | |
Merge "libbinder_ndk: don't borrow fd into unique_fd" am: 637113c267 am: ba7a315924 am: e3768ad7ac
Change-Id: Ib8732dd2899f01009875149a7d6d9bba6aa16716
| -rw-r--r-- | libs/binder/ndk/parcel.cpp | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/libs/binder/ndk/parcel.cpp b/libs/binder/ndk/parcel.cpp index 703ceaed54..c33c44f8a8 100644 --- a/libs/binder/ndk/parcel.cpp +++ b/libs/binder/ndk/parcel.cpp @@ -247,15 +247,12 @@ binder_status_t AParcel_writeParcelFileDescriptor(AParcel* parcel, int fd) { if (fd != -1) { return STATUS_UNKNOWN_ERROR; } - return parcel->get()->writeInt32(0); // null + return PruneStatusT(parcel->get()->writeInt32(0)); // null } + status_t status = parcel->get()->writeInt32(1); // not-null + if (status != STATUS_OK) return PruneStatusT(status); - ParcelFileDescriptor parcelFd = ParcelFileDescriptor(unique_fd(fd)); - status_t status = parcel->get()->writeParcelable(parcelFd); - - // ownership is retained by caller - (void)parcelFd.release().release(); - + status = parcel->get()->writeDupParcelFileDescriptor(fd); return PruneStatusT(status); } |