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

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

Issue 511683003: Add a flag to let render process wait for java debugger (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 4 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/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 1b653d0e3be16af432ffa89e2118b2d9ca072414..a719ac1ef0e4d53826e6b6a690b2cb23e8fabc40 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
@@ -13,7 +13,9 @@ import android.view.Surface;
import com.google.common.annotations.VisibleForTesting;
+import org.chromium.base.BaseSwitches;
import org.chromium.base.CalledByNative;
+import org.chromium.base.CommandLine;
import org.chromium.base.JNINamespace;
import org.chromium.base.ThreadUtils;
import org.chromium.base.TraceEvent;
@@ -26,6 +28,7 @@ import org.chromium.content.common.IChildProcessCallback;
import org.chromium.content.common.SurfaceWrapper;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@@ -358,13 +361,20 @@ public class ChildProcessLauncher {
int callbackType = CALLBACK_FOR_UNKNOWN_PROCESS;
boolean inSandbox = true;
String processType = getSwitchValue(commandLine, SWITCH_PROCESS_TYPE);
+ ArrayList<String> cmdList = commandLine == null ? new ArrayList<String>() :
+ new ArrayList<String>(Arrays.asList(commandLine));
Feng Qian 2014/08/27 17:45:29 We should put render command line options in one p
Jaekyun Seok (inactive) 2014/08/28 00:09:49 Done.
if (SWITCH_RENDERER_PROCESS.equals(processType)) {
+ if (CommandLine.getInstance().hasSwitch(
+ BaseSwitches.WAIT_RENDERER_FOR_JAVA_DEBUGGER)) {
+ cmdList.add("--" + BaseSwitches.WAIT_FOR_JAVA_DEBUGGER);
+ }
callbackType = CALLBACK_FOR_RENDERER_PROCESS;
} else if (SWITCH_GPU_PROCESS.equals(processType)) {
callbackType = CALLBACK_FOR_GPU_PROCESS;
} else if (SWITCH_PPAPI_BROKER_PROCESS.equals(processType)) {
inSandbox = false;
}
+ String[] updatedCommandLine = cmdList.toArray(new String[0]);
ChildProcessConnection allocatedConnection = null;
synchronized (ChildProcessLauncher.class) {
@@ -374,7 +384,7 @@ public class ChildProcessLauncher {
}
}
if (allocatedConnection == null) {
- allocatedConnection = allocateBoundConnection(context, commandLine, inSandbox);
+ allocatedConnection = allocateBoundConnection(context, updatedCommandLine, inSandbox);
if (allocatedConnection == null) {
// Notify the native code so it can free the heap allocated callback.
nativeOnChildProcessStarted(clientContext, 0);
@@ -386,8 +396,8 @@ public class ChildProcessLauncher {
Log.d(TAG, "Setting up connection to process: slot=" +
allocatedConnection.getServiceNumber());
- triggerConnectionSetup(allocatedConnection, commandLine, childProcessId, filesToBeMapped,
- callbackType, clientContext);
+ triggerConnectionSetup(allocatedConnection, updatedCommandLine, childProcessId,
+ filesToBeMapped, callbackType, clientContext);
TraceEvent.end();
}

Powered by Google App Engine
This is Rietveld 408576698