Index: content/browser/child_process_launcher.cc |
diff --git a/content/browser/child_process_launcher.cc b/content/browser/child_process_launcher.cc |
index 636fd88fd0354f7bb64adeee0e2794301ed37e90..5f708b87922e918ab1a75b6433e8b12fc6a1106e 100644 |
--- a/content/browser/child_process_launcher.cc |
+++ b/content/browser/child_process_launcher.cc |
@@ -181,6 +181,18 @@ void ChildProcessLauncher::Context::Launch( |
client_ = client; |
#if defined(OS_ANDROID) |
+ // We currently only support renderer and gpu child processes. |
+ std::string process_type = |
+ cmd_line->GetSwitchValueASCII(switches::kProcessType); |
+ CHECK_NE(switches::kPluginProcess, process_type); |
+ CHECK_NE(switches::kPpapiBrokerProcess, process_type); |
+ CHECK_NE(switches::kPpapiPluginProcess, process_type); |
+ CHECK_NE(switches::kSandboxIPCProcess, process_type); |
+ CHECK_NE(switches::kUtilityProcess, process_type); |
+ CHECK_NE(switches::kZygoteProcess, process_type); |
+ CHECK(process_type == switches::kGpuProcess || |
+ process_type == switches::kRendererProcess); |
+ |
// We need to close the client end of the IPC channel to reliably detect |
// child termination. We will close this fd after we create the child |
// process which is asynchronous on Android. |