Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1696)

Unified Diff: content/public/browser/browser_message_filter.h

Issue 142923005: Allow MessageFilters to restrict listening to specific message classes (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Working patch Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/public/browser/browser_message_filter.h
diff --git a/content/public/browser/browser_message_filter.h b/content/public/browser/browser_message_filter.h
index ad1f0693790b2abb0177ffe92433b49b9861fada..d6a3ea4c0fa5038c83d87743349bef3d7ad7874f 100644
--- a/content/public/browser/browser_message_filter.h
+++ b/content/public/browser/browser_message_filter.h
@@ -29,7 +29,8 @@ class CONTENT_EXPORT BrowserMessageFilter
BrowserMessageFilter, BrowserMessageFilterTraits>,
public IPC::Sender {
public:
- BrowserMessageFilter();
+ BrowserMessageFilter(const uint32* message_classes_to_filter,
+ size_t num_message_classes_to_filter);
// These match the corresponding IPC::ChannelProxy::MessageFilter methods and
// are always called on the IO thread.
@@ -91,6 +92,10 @@ class CONTENT_EXPORT BrowserMessageFilter
// Can be called on any thread.
virtual void BadMessageReceived();
+ const std::vector<uint32>& message_classes_to_filter() const {
+ return message_classes_to_filter_;
+ }
+
protected:
virtual ~BrowserMessageFilter();
@@ -117,6 +122,8 @@ class CONTENT_EXPORT BrowserMessageFilter
IPC::Channel* channel_;
base::ProcessId peer_pid_;
+ std::vector<uint32> message_classes_to_filter_;
+
#if defined(OS_WIN)
base::Lock peer_handle_lock_;
base::ProcessHandle peer_handle_;

Powered by Google App Engine
This is Rietveld 408576698