Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1297)

Unified Diff: content/public/android/java/src/org/chromium/content/browser/FileDescriptorInfo.java

Issue 1156183003: Pass file Regions along with FDs to child processes on Android (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add operator!= for Region Created 5 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/public/android/java/src/org/chromium/content/browser/FileDescriptorInfo.java
diff --git a/content/public/android/java/src/org/chromium/content/browser/FileDescriptorInfo.java b/content/public/android/java/src/org/chromium/content/browser/FileDescriptorInfo.java
index 98d8bda51e9f98b99c9f9122d8dd586bdb6a89f8..37f093f2c5cc96882c89894f2ea1a0b6e5ba623c 100644
--- a/content/public/android/java/src/org/chromium/content/browser/FileDescriptorInfo.java
+++ b/content/public/android/java/src/org/chromium/content/browser/FileDescriptorInfo.java
@@ -4,14 +4,57 @@
package org.chromium.content.browser;
-class FileDescriptorInfo {
- public int mId;
- public int mFd;
- public boolean mAutoClose;
+import android.os.Parcel;
+import android.os.ParcelFileDescriptor;
+import android.os.Parcelable;
- FileDescriptorInfo(int id, int fd, boolean autoClose) {
+/**
+ * Parcelable class that contains file descriptor and file region information to
+ * be passed to child processes.
+ */
+public final class FileDescriptorInfo implements Parcelable {
+ public final int mId;
+ public final ParcelFileDescriptor mFd;
+ public final long mOffset;
+ public final long mSize;
+
+ FileDescriptorInfo(int id, ParcelFileDescriptor fd, long offset, long size) {
mId = id;
mFd = fd;
- mAutoClose = autoClose;
+ mOffset = offset;
+ mSize = size;
+ }
+
+ FileDescriptorInfo(Parcel in) {
+ mId = in.readInt();
+ mFd = in.readParcelable(null);
+ mOffset = in.readLong();
+ mSize = in.readLong();
+ }
+
+ @Override
+ public int describeContents() {
+ return CONTENTS_FILE_DESCRIPTOR;
}
-}
+
+ @Override
+ public void writeToParcel(Parcel dest, int flags) {
+ dest.writeInt(mId);
+ dest.writeParcelable(mFd, CONTENTS_FILE_DESCRIPTOR);
+ dest.writeLong(mOffset);
+ dest.writeLong(mSize);
+ }
+
+ public static final Parcelable.Creator<FileDescriptorInfo> CREATOR =
+ new Parcelable.Creator<FileDescriptorInfo>() {
+ @Override
+ public FileDescriptorInfo createFromParcel(Parcel in) {
+ return new FileDescriptorInfo(in);
+ }
+
+ @Override
+ public FileDescriptorInfo[] newArray(int size) {
+ return new FileDescriptorInfo[size];
+ }
+ };
+}

Powered by Google App Engine
This is Rietveld 408576698