diff options
| author | Tim Kilbourn <tkilbourn@google.com> | 2015-06-04 21:40:14 +0000 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-06-04 21:40:15 +0000 |
| commit | 57914802b5c514a84e69b52c8897eaa3a3e74aa7 (patch) | |
| tree | e103fe055d0aa0323b529df27fa5edc83b5cc0b3 /core | |
| parent | 34df42d59753e7721b346d1048c686d204a44da3 (diff) | |
| parent | 4bf27b53b97475803fdb85069d500a075aefc801 (diff) | |
| download | frameworks_base-57914802b5c514a84e69b52c8897eaa3a3e74aa7.zip frameworks_base-57914802b5c514a84e69b52c8897eaa3a3e74aa7.tar.gz frameworks_base-57914802b5c514a84e69b52c8897eaa3a3e74aa7.tar.bz2 | |
Merge "DO NOT MERGE Fix DropBoxManager.Entry parcels with fds." into mnc-dev
Diffstat (limited to 'core')
| -rw-r--r-- | core/java/android/os/DropBoxManager.java | 3 | ||||
| -rw-r--r-- | core/java/android/os/ParcelFileDescriptor.java | 10 |
2 files changed, 6 insertions, 7 deletions
diff --git a/core/java/android/os/DropBoxManager.java b/core/java/android/os/DropBoxManager.java index 27001dc..2b14468 100644 --- a/core/java/android/os/DropBoxManager.java +++ b/core/java/android/os/DropBoxManager.java @@ -225,7 +225,8 @@ public class DropBoxManager { if ((flags & HAS_BYTE_ARRAY) != 0) { return new Entry(tag, millis, in.createByteArray(), flags & ~HAS_BYTE_ARRAY); } else { - return new Entry(tag, millis, in.readFileDescriptor(), flags); + ParcelFileDescriptor pfd = ParcelFileDescriptor.CREATOR.createFromParcel(in); + return new Entry(tag, millis, pfd, flags); } } }; diff --git a/core/java/android/os/ParcelFileDescriptor.java b/core/java/android/os/ParcelFileDescriptor.java index c24f3fe..1c9c713 100644 --- a/core/java/android/os/ParcelFileDescriptor.java +++ b/core/java/android/os/ParcelFileDescriptor.java @@ -915,8 +915,6 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { */ @Override public void writeToParcel(Parcel out, int flags) { - // WARNING: This must stay in sync with Parcel::readParcelFileDescriptor() - // in frameworks/native/libs/binder/Parcel.cpp if (mWrapped != null) { try { mWrapped.writeToParcel(out, flags); @@ -924,12 +922,13 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { releaseResources(); } } else { - out.writeFileDescriptor(mFd); if (mCommFd != null) { out.writeInt(1); + out.writeFileDescriptor(mFd); out.writeFileDescriptor(mCommFd); } else { out.writeInt(0); + out.writeFileDescriptor(mFd); } if ((flags & PARCELABLE_WRITE_RETURN_VALUE) != 0 && !mClosed) { // Not a real close, so emit no status @@ -942,11 +941,10 @@ public class ParcelFileDescriptor implements Parcelable, Closeable { = new Parcelable.Creator<ParcelFileDescriptor>() { @Override public ParcelFileDescriptor createFromParcel(Parcel in) { - // WARNING: This must stay in sync with Parcel::writeParcelFileDescriptor() - // in frameworks/native/libs/binder/Parcel.cpp + int hasCommChannel = in.readInt(); final FileDescriptor fd = in.readRawFileDescriptor(); FileDescriptor commChannel = null; - if (in.readInt() != 0) { + if (hasCommChannel != 0) { commChannel = in.readRawFileDescriptor(); } return new ParcelFileDescriptor(fd, commChannel); |
