Chromium Code Reviews| Index: chrome/plugin/plugin_channel_base.cc |
| diff --git a/chrome/plugin/plugin_channel_base.cc b/chrome/plugin/plugin_channel_base.cc |
| index e9969196132d74127a53e4ca785c12d48a8ed11a..f4bcac93881a94d3d650ce671aca5f29120bb5ba 100644 |
| --- a/chrome/plugin/plugin_channel_base.cc |
| +++ b/chrome/plugin/plugin_channel_base.cc |
| @@ -60,8 +60,8 @@ PluginChannelBase::PluginChannelBase() |
| peer_pid_(0), |
| in_remove_route_(false), |
| channel_valid_(false), |
| - in_dispatch_(0), |
| - send_unblocking_only_during_dispatch_(false) { |
| + in_sync_dispatch_(0), |
| + send_unblocking_only_during_sync_dispatch_(false) { |
| } |
| PluginChannelBase::~PluginChannelBase() { |
| @@ -100,7 +100,7 @@ bool PluginChannelBase::Send(IPC::Message* message) { |
| return false; |
| } |
| - if (send_unblocking_only_during_dispatch_ && in_dispatch_ == 0 && |
| + if (send_unblocking_only_during_sync_dispatch_ && in_sync_dispatch_ == 0 && |
| message->is_sync()) { |
| message->set_unblock(false); |
| } |
| @@ -117,7 +117,8 @@ void PluginChannelBase::OnMessageReceived(const IPC::Message& message) { |
| // ourself so that we can send the reply and decrement back in_dispatch_. |
| scoped_refptr<PluginChannelBase> me(this); |
| - in_dispatch_++; |
| + if (message.is_sync()) |
| + in_sync_dispatch_++; |
| if (message.routing_id() == MSG_ROUTING_CONTROL) { |
| OnControlMessageReceived(message); |
| } else { |
| @@ -130,7 +131,8 @@ void PluginChannelBase::OnMessageReceived(const IPC::Message& message) { |
| Send(reply); |
| } |
| } |
| - in_dispatch_--; |
| + if (message.is_sync()) |
|
jam
2009/11/17 21:09:01
can't use message here since it's already deleted,
jam
2009/11/17 21:11:13
argh, i didn't mean that. nvm!!
|
| + in_sync_dispatch_--; |
| } |
| void PluginChannelBase::OnChannelConnected(int32 peer_pid) { |
| @@ -214,6 +216,6 @@ void PluginChannelBase::OnChannelError() { |
| channel_valid_ = false; |
| } |
| -void PluginChannelBase::SendUnblockingOnlyDuringDispatch() { |
| - send_unblocking_only_during_dispatch_ = true; |
| +void PluginChannelBase::SendUnblockingOnlyDuringSyncDispatch() { |
|
jam
2009/11/17 21:09:01
since you're changing this, mind moving it to the
|
| + send_unblocking_only_during_sync_dispatch_ = true; |
| } |