summaryrefslogtreecommitdiff
path: root/core/java
diff options
context:
space:
mode:
authorJosh Gao <jmgao@google.com>2018-07-20 22:29:34 -0700
committerandroid-build-merger <android-build-merger@google.com>2018-07-20 22:29:34 -0700
commitba5291868fd02196f7a673d1cb966a3b99209b15 (patch)
tree26203dd42d444cb762f6ae5ecc54c84082313336 /core/java
parent1e879d248eb1c36c7937dbab4b2bb4202268fda0 (diff)
parentc671d623c4b9f2edce7516e6343f6bb16d1573bd (diff)
Merge changes from topic "bionic_fdsan_java" am: bb352287c9 am: 1fad55e868 am: f28713990b
am: c671d623c4 Change-Id: I23613868a74b7b1dbd09a3325578c06b391780b5
Diffstat (limited to 'core/java')
-rw-r--r--core/java/android/os/Parcel.java14
-rw-r--r--core/java/android/os/ParcelFileDescriptor.java9
2 files changed, 7 insertions, 16 deletions
diff --git a/core/java/android/os/Parcel.java b/core/java/android/os/Parcel.java
index 887826090714..7e7666adfeed 100644
--- a/core/java/android/os/Parcel.java
+++ b/core/java/android/os/Parcel.java
@@ -39,7 +39,6 @@ import libcore.util.SneakyThrow;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.FileDescriptor;
-import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
@@ -2100,19 +2099,6 @@ public final class Parcel {
}
}
- /** @deprecated use {@link android.system.Os#open(String, int, int)} */
- @Deprecated
- static native FileDescriptor openFileDescriptor(String file, int mode)
- throws FileNotFoundException;
-
- /** @deprecated use {@link android.system.Os#dup(FileDescriptor)} */
- @Deprecated
- static native FileDescriptor dupFileDescriptor(FileDescriptor orig) throws IOException;
-
- /** @deprecated use {@link android.system.Os#close(FileDescriptor)} */
- @Deprecated
- static native void closeFileDescriptor(FileDescriptor desc) throws IOException;
-
/**
* Read a byte value from the parcel at the current dataPosition().
*/
diff --git a/core/java/android/os/ParcelFileDescriptor.java b/core/java/android/os/ParcelFileDescriptor.java
index 7556f0921b4d..c9edc531d134 100644
--- a/core/java/android/os/ParcelFileDescriptor.java
+++ b/core/java/android/os/ParcelFileDescriptor.java
@@ -188,7 +188,13 @@ public class ParcelFileDescriptor implements Parcelable, Closeable {
}
mWrapped = null;
mFd = fd;
+ IoUtils.setFdOwner(mFd, this);
+
mCommFd = commChannel;
+ if (mCommFd != null) {
+ IoUtils.setFdOwner(mCommFd, this);
+ }
+
mGuard.open("close");
}
@@ -682,8 +688,7 @@ public class ParcelFileDescriptor implements Parcelable, Closeable {
if (mClosed) {
throw new IllegalStateException("Already closed");
}
- final int fd = getFd();
- mFd.setInt$(-1);
+ int fd = IoUtils.acquireRawFd(mFd);
writeCommStatusAndClose(Status.DETACHED, null);
mClosed = true;
mGuard.close();