Index: content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java |
diff --git a/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java b/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java |
index df636694f45b4e868dcf8bf803d67968f1a5375b..a8fe50fd1423a09f2e8565f0a1402264803cc5a8 100644 |
--- a/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java |
+++ b/content/public/android/java/src/org/chromium/content/browser/ChildProcessLauncher.java |
@@ -15,8 +15,12 @@ import org.chromium.base.ThreadUtils; |
import org.chromium.base.TraceEvent; |
import org.chromium.base.VisibleForTesting; |
import org.chromium.base.library_loader.Linker; |
+import org.chromium.base.process_launcher.BaseChildProcessConnection; |
+import org.chromium.base.process_launcher.BindingManager; |
+import org.chromium.base.process_launcher.BindingManagerImpl; |
import org.chromium.base.process_launcher.ChildProcessCreationParams; |
import org.chromium.base.process_launcher.FileDescriptorInfo; |
+import org.chromium.base.process_launcher.ManagedChildProcessConnection; |
import org.chromium.content.app.ChromiumLinkerParams; |
import org.chromium.content.common.ContentSwitches; |
@@ -100,10 +104,11 @@ public class ChildProcessLauncher { |
@VisibleForTesting |
static Bundle createCommonParamsBundle(ChildProcessCreationParams params) { |
Bundle commonParams = new Bundle(); |
- commonParams.putParcelable( |
- ChildProcessConstants.EXTRA_LINKER_PARAMS, getLinkerParamsForNewConnection()); |
+ commonParams.putParcelable(ContentChildProcessConstants.EXTRA_LINKER_PARAMS, |
+ getLinkerParamsForNewConnection()); |
final boolean bindToCallerCheck = params == null ? false : params.getBindToCallerCheck(); |
- commonParams.putBoolean(ChildProcessConstants.EXTRA_BIND_TO_CALLER, bindToCallerCheck); |
+ commonParams.putBoolean( |
+ ContentChildProcessConstants.EXTRA_BIND_TO_CALLER, bindToCallerCheck); |
return commonParams; |
} |
@@ -207,7 +212,8 @@ public class ChildProcessLauncher { |
public static BindingManager getBindingManager() { |
synchronized (sBindingManagerLock) { |
if (sBindingManager == null) { |
- sBindingManager = BindingManagerImpl.createBindingManager(); |
+ sBindingManager = |
+ BindingManagerImpl.createBindingManager(LauncherThread.getHandler()); |
} |
return sBindingManager; |
} |
@@ -469,23 +475,6 @@ public class ChildProcessLauncher { |
} |
} |
- /** |
- * Create the common bundle to be passed to child processes. |
- * @param context Application context. |
- * @param commandLine Command line params to be passed to the service. |
- * @param linkerParams Linker params to start the service. |
- */ |
- protected static Bundle createsServiceBundle( |
- String[] commandLine, FileDescriptorInfo[] filesToBeMapped) { |
- Bundle bundle = new Bundle(); |
- bundle.putStringArray(ChildProcessConstants.EXTRA_COMMAND_LINE, commandLine); |
- bundle.putParcelableArray(ChildProcessConstants.EXTRA_FILES, filesToBeMapped); |
- bundle.putInt(ChildProcessConstants.EXTRA_CPU_COUNT, CpuFeatures.getCount()); |
- bundle.putLong(ChildProcessConstants.EXTRA_CPU_FEATURES, CpuFeatures.getMask()); |
- bundle.putBundle(Linker.EXTRA_LINKER_SHARED_RELROS, Linker.getInstance().getSharedRelros()); |
- return bundle; |
- } |
- |
@VisibleForTesting |
static void triggerConnectionSetup(final BaseChildProcessConnection connection, |
String[] commandLine, int childProcessId, FileDescriptorInfo[] filesToBeMapped, |
@@ -495,6 +484,16 @@ public class ChildProcessLauncher { |
BaseChildProcessConnection.ConnectionCallback connectionCallback = |
new BaseChildProcessConnection.ConnectionCallback() { |
@Override |
+ public void onConnectionSetup(Bundle params) { |
+ params.putInt(ContentChildProcessConstants.EXTRA_CPU_COUNT, |
+ CpuFeatures.getCount()); |
+ params.putLong(ContentChildProcessConstants.EXTRA_CPU_FEATURES, |
+ CpuFeatures.getMask()); |
+ params.putBundle(Linker.EXTRA_LINKER_SHARED_RELROS, |
+ Linker.getInstance().getSharedRelros()); |
+ } |
+ |
+ @Override |
public void onConnected(BaseChildProcessConnection connection) { |
assert LauncherThread.runningOnLauncherThread(); |
if (connection != null) { |