Index: ppapi/proxy/ppp_instance_proxy.cc |
diff --git a/ppapi/proxy/ppp_instance_proxy.cc b/ppapi/proxy/ppp_instance_proxy.cc |
index b2103a3a4eea38a4699e9c8a0da020ea6dcea221..4d5bb3dd4f6cdaba9ef3cf225dad51c82aa1f97a 100644 |
--- a/ppapi/proxy/ppp_instance_proxy.cc |
+++ b/ppapi/proxy/ppp_instance_proxy.cc |
@@ -57,9 +57,12 @@ void DidChangeFocus(PP_Instance instance, PP_Bool has_focus) { |
PP_Bool HandleInputEvent(PP_Instance instance, |
const PP_InputEvent* event) { |
PP_Bool result = PP_FALSE; |
- HostDispatcher::GetForInstance(instance)->Send( |
- new PpapiMsg_PPPInstance_HandleInputEvent(INTERFACE_ID_PPP_INSTANCE, |
- instance, *event, &result)); |
+ IPC::Message* msg = new PpapiMsg_PPPInstance_HandleInputEvent( |
+ INTERFACE_ID_PPP_INSTANCE, instance, *event, &result); |
+ // Make this message not unblock, to avoid re-entrancy problems when the |
+ // plugin does a sync call to the renderer. |
brettw
2011/02/02 05:00:08
Can you add something like: "This will force any s
|
+ msg->set_unblock(false); |
+ HostDispatcher::GetForInstance(instance)->Send(msg); |
return result; |
} |