Commit 951b12d5 authored by dmichael@chromium.org's avatar dmichael@chromium.org

PPAPI/NaCl: Restrict ppapi messages to unblock only ppapi

Currently, we don't tell the HostDispatcher to only unblock pepper messages when an incoming "unblock" pepper message comes in. This results in us unblocking non-pepper messages improperly (such as GPU messages).

BUG=116317
TEST=


Review URL: https://chromiumcodereview.appspot.com/10843017

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@149451 0039d316-1c4b-4281-b951-d872f2087c98
parent 62fc8075
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
#include "content/public/common/sandbox_init.h" #include "content/public/common/sandbox_init.h"
#include "content/public/renderer/render_thread.h" #include "content/public/renderer/render_thread.h"
#include "content/public/renderer/render_view.h" #include "content/public/renderer/render_view.h"
#include "content/public/renderer/renderer_restrict_dispatch_group.h"
#include "ipc/ipc_sync_message_filter.h" #include "ipc/ipc_sync_message_filter.h"
#include "ppapi/c/private/pp_file_handle.h" #include "ppapi/c/private/pp_file_handle.h"
#include "ppapi/c/private/ppb_nacl_private.h" #include "ppapi/c/private/ppb_nacl_private.h"
...@@ -171,6 +172,10 @@ class OutOfProcessProxy : public PluginDelegate::OutOfProcessProxy { ...@@ -171,6 +172,10 @@ class OutOfProcessProxy : public PluginDelegate::OutOfProcessProxy {
return false; return false;
} }
// Make sure that incoming plugin->renderer "unblock" messages can ONLY
// unblock other pepper messages.
dispatcher_->channel()->SetRestrictDispatchChannelGroup(
content::kRendererRestrictDispatchGroup_Pepper);
return true; return true;
} }
......
...@@ -2,8 +2,8 @@ ...@@ -2,8 +2,8 @@
// Use of this source code is governed by a BSD-style license that can be // Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file. // found in the LICENSE file.
#ifndef CONTENT_RENDERER_RESTRICT_DISPATCH_GROUP_H_ #ifndef CONTENT_PUBLIC_RENDERER_RESTRICT_DISPATCH_GROUP_H_
#define CONTENT_RENDERER_RESTRICT_DISPATCH_GROUP_H_ #define CONTENT_PUBLIC_RENDERER_RESTRICT_DISPATCH_GROUP_H_
#include "ipc/ipc_sync_channel.h" #include "ipc/ipc_sync_channel.h"
...@@ -21,4 +21,4 @@ enum RendererRestrictDispatchGroup { ...@@ -21,4 +21,4 @@ enum RendererRestrictDispatchGroup {
} // namespace content } // namespace content
#endif // CONTENT_RENDERER_RESTRICT_DISPATCH_GROUP_H_ #endif // CONTENT_PUBLIC_RENDERER_RESTRICT_DISPATCH_GROUP_H_
...@@ -5,9 +5,9 @@ ...@@ -5,9 +5,9 @@
#include "content/renderer/pepper/pepper_broker_impl.h" #include "content/renderer/pepper/pepper_broker_impl.h"
#include "build/build_config.h" #include "build/build_config.h"
#include "content/public/renderer/renderer_restrict_dispatch_group.h"
#include "content/renderer/pepper/pepper_plugin_delegate_impl.h" #include "content/renderer/pepper/pepper_plugin_delegate_impl.h"
#include "content/renderer/pepper/pepper_proxy_channel_delegate_impl.h" #include "content/renderer/pepper/pepper_proxy_channel_delegate_impl.h"
#include "content/renderer/renderer_restrict_dispatch_group.h"
#include "ipc/ipc_channel_handle.h" #include "ipc/ipc_channel_handle.h"
#include "ppapi/proxy/broker_dispatcher.h" #include "ppapi/proxy/broker_dispatcher.h"
#include "ppapi/proxy/ppapi_messages.h" #include "ppapi/proxy/ppapi_messages.h"
......
...@@ -33,6 +33,7 @@ ...@@ -33,6 +33,7 @@
#include "content/public/common/media_stream_request.h" #include "content/public/common/media_stream_request.h"
#include "content/public/common/referrer.h" #include "content/public/common/referrer.h"
#include "content/public/renderer/content_renderer_client.h" #include "content/public/renderer/content_renderer_client.h"
#include "content/public/renderer/renderer_restrict_dispatch_group.h"
#include "content/renderer/browser_plugin/old/browser_plugin_constants.h" #include "content/renderer/browser_plugin/old/browser_plugin_constants.h"
#include "content/renderer/browser_plugin/old/browser_plugin_registry.h" #include "content/renderer/browser_plugin/old/browser_plugin_registry.h"
#include "content/renderer/gamepad_shared_memory_reader.h" #include "content/renderer/gamepad_shared_memory_reader.h"
...@@ -57,7 +58,6 @@ ...@@ -57,7 +58,6 @@
#include "content/renderer/render_view_impl.h" #include "content/renderer/render_view_impl.h"
#include "content/renderer/render_widget_fullscreen_pepper.h" #include "content/renderer/render_widget_fullscreen_pepper.h"
#include "content/renderer/renderer_clipboard_client.h" #include "content/renderer/renderer_clipboard_client.h"
#include "content/renderer/renderer_restrict_dispatch_group.h"
#include "content/renderer/webplugin_delegate_proxy.h" #include "content/renderer/webplugin_delegate_proxy.h"
#include "googleurl/src/gurl.h" #include "googleurl/src/gurl.h"
#include "ipc/ipc_channel_handle.h" #include "ipc/ipc_channel_handle.h"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment