Chromium Code Reviews| Index: content/browser/renderer_host/render_process_host_impl.cc |
| diff --git a/content/browser/renderer_host/render_process_host_impl.cc b/content/browser/renderer_host/render_process_host_impl.cc |
| index 61ab2f4dbe5ac8845332efbb3ecc31ee5b5bd356..8969eaa315b73c768a916ad60675e56ef20b48ec 100644 |
| --- a/content/browser/renderer_host/render_process_host_impl.cc |
| +++ b/content/browser/renderer_host/render_process_host_impl.cc |
| @@ -111,6 +111,7 @@ |
| #include "ipc/ipc_logging.h" |
| #include "ipc/ipc_platform_file.h" |
| #include "ipc/ipc_switches.h" |
| +#include "ipc/ipc_sync_channel.h" |
| #include "media/base/media_switches.h" |
| #include "net/url_request/url_request_context_getter.h" |
| #include "ui/base/ui_base_switches.h" |
| @@ -343,6 +344,9 @@ RenderProcessHostImpl::RenderProcessHostImpl( |
| storage_partition_impl_(storage_partition_impl), |
| sudden_termination_allowed_(true), |
| ignore_input_events_(false), |
| +#if defined(OS_ANDROID) |
| + dummy_shutdown_event_(false, false), |
| +#endif |
| is_guest_(is_guest) { |
| widget_helper_ = new RenderWidgetHelper(); |
| @@ -450,9 +454,18 @@ bool RenderProcessHostImpl::Init() { |
| // Setup the IPC channel. |
| const std::string channel_id = |
| IPC::Channel::GenerateVerifiedChannelID(std::string()); |
| +#if defined(OS_ANDROID) |
| + // Android WebView needs to be able to wait from the UI thread to support |
| + // the synchronous legacy APIs. |
| + channel_.reset(new IPC::SyncChannel( |
|
jam
2012/09/19 16:55:43
please make this conditional on webview (either ru
Leandro Graciá Gil
2012/09/19 18:08:59
We're currently working on this, but haven't found
jam
2012/09/19 19:37:56
I can't make any recommendations since I'm not fam
|
| + channel_id, IPC::Channel::MODE_SERVER, this, |
| + BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO), |
| + true, &dummy_shutdown_event_)); |
| +#else |
| channel_.reset(new IPC::ChannelProxy( |
| channel_id, IPC::Channel::MODE_SERVER, this, |
| BrowserThread::GetMessageLoopProxyForThread(BrowserThread::IO))); |
| +#endif |
| // Call the embedder first so that their IPC filters have priority. |
| GetContentClient()->browser()->RenderProcessHostCreated(this); |