| 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 d3bdd8067714480170ce788a3518f9027fd6d7f7..ff61a0a28bb3c7e522a566cf704828498f565898 100644
|
| --- a/content/browser/renderer_host/render_process_host_impl.cc
|
| +++ b/content/browser/renderer_host/render_process_host_impl.cc
|
| @@ -1002,7 +1002,7 @@ void RenderProcessHostImpl::ClearTransportDIBCache() {
|
|
|
| bool RenderProcessHostImpl::Send(IPC::Message* msg) {
|
| if (!channel_.get()) {
|
| - if (!is_initialized_) {
|
| + if (!is_initialized_ && !msg->is_sync()) {
|
| queued_messages_.push(msg);
|
| return true;
|
| } else {
|
| @@ -1012,6 +1012,10 @@ bool RenderProcessHostImpl::Send(IPC::Message* msg) {
|
| }
|
|
|
| if (child_process_launcher_.get() && child_process_launcher_->IsStarting()) {
|
| + if (msg->is_sync()) {
|
| + delete msg;
|
| + return false;
|
| + }
|
| queued_messages_.push(msg);
|
| return true;
|
| }
|
|
|