Index: content/public/android/java/src/org/chromium/content/browser/ChildProcessConnection.java |
diff --git a/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnection.java b/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnection.java |
index 46d91e8f81f694065588a51f57c3bb98548ff4ca..4d2571a3f64c384703d634626f9ed4a9f94dfc79 100644 |
--- a/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnection.java |
+++ b/content/public/android/java/src/org/chromium/content/browser/ChildProcessConnection.java |
@@ -27,6 +27,7 @@ import org.chromium.content.app.ChildProcessService; |
import org.chromium.content.common.CommandLine; |
import org.chromium.content.common.IChildProcessCallback; |
import org.chromium.content.common.IChildProcessService; |
+import org.chromium.content.common.LinkerParams; |
import org.chromium.content.common.TraceEvent; |
/** |
@@ -103,18 +104,23 @@ public class ChildProcessConnection { |
// Incremented on attachAsActive(), decremented on detachAsActive(). |
private int mAttachAsActiveCount = 0; |
+ // Linker-related parameters. |
+ private LinkerParams mLinkerParams = null; |
+ |
private static final String TAG = "ChildProcessConnection"; |
private static class ConnectionParams { |
final String[] mCommandLine; |
final FileDescriptorInfo[] mFilesToBeMapped; |
final IChildProcessCallback mCallback; |
+ final Bundle mSharedRelros; |
ConnectionParams(String[] commandLine, FileDescriptorInfo[] filesToBeMapped, |
- IChildProcessCallback callback) { |
+ IChildProcessCallback callback, Bundle sharedRelros) { |
mCommandLine = commandLine; |
mFilesToBeMapped = filesToBeMapped; |
mCallback = callback; |
+ mSharedRelros = sharedRelros; |
} |
} |
@@ -204,12 +210,14 @@ public class ChildProcessConnection { |
ChildProcessConnection(Context context, int number, boolean inSandbox, |
ChildProcessConnection.DeathCallback deathCallback, |
- Class<? extends ChildProcessService> serviceClass) { |
+ Class<? extends ChildProcessService> serviceClass, |
+ LinkerParams linkerParams) { |
mContext = context; |
mServiceNumber = number; |
mInSandbox = inSandbox; |
mDeathCallback = deathCallback; |
mServiceClass = serviceClass; |
+ mLinkerParams = linkerParams; |
mInitialBinding = new ChildServiceConnection(Context.BIND_AUTO_CREATE); |
mStrongBinding = new ChildServiceConnection( |
Context.BIND_AUTO_CREATE | Context.BIND_IMPORTANT); |
@@ -273,12 +281,13 @@ public class ChildProcessConnection { |
String[] commandLine, |
FileDescriptorInfo[] filesToBeMapped, |
IChildProcessCallback processCallback, |
- ConnectionCallback connectionCallbacks) { |
+ ConnectionCallback connectionCallbacks, |
+ Bundle sharedRelros) { |
synchronized(mLock) { |
TraceEvent.begin(); |
assert mConnectionParams == null; |
mConnectionCallback = connectionCallbacks; |
- mConnectionParams = new ConnectionParams(commandLine, filesToBeMapped, processCallback); |
+ mConnectionParams = new ConnectionParams(commandLine, filesToBeMapped, processCallback, sharedRelros); |
// Make sure that the service is already connected. If not, doConnectionSetup() will be |
// called from onServiceConnected(). |
if (mServiceConnectComplete) { |