Index: chrome/renderer/chrome_content_renderer_client.cc |
diff --git a/chrome/renderer/chrome_content_renderer_client.cc b/chrome/renderer/chrome_content_renderer_client.cc |
index f7a40cbb8cefedb334b2c08be6c4c81d8ebc5904..756f342a72ca25bdd190e41ed87d18ec18eeda66 100644 |
--- a/chrome/renderer/chrome_content_renderer_client.cc |
+++ b/chrome/renderer/chrome_content_renderer_client.cc |
@@ -127,6 +127,10 @@ |
#include "extensions/renderer/script_context.h" |
#endif |
+#if defined(ENABLE_IPC_FUZZER) |
+#include "chrome/common/external_ipc_dumper.h" |
+#endif |
+ |
#if defined(ENABLE_PRINTING) |
#include "chrome/renderer/printing/chrome_print_web_view_helper_delegate.h" |
#include "components/printing/renderer/print_web_view_helper.h" |
@@ -466,6 +470,16 @@ void ChromeContentRendererClient::RenderThreadStarted() { |
WebSecurityPolicy::registerURLSchemeAsLocal(external_file_scheme); |
#endif |
+#if defined(ENABLE_IPC_FUZZER) |
+ if (command_line->HasSwitch(switches::kIpcDumpDirectory)) { |
+ base::FilePath dump_directory = |
+ command_line->GetSwitchValuePath(switches::kIpcDumpDirectory); |
+ IPC::ChannelProxy::OutgoingMessageFilter* filter = |
+ LoadExternalIPCDumper(dump_directory); |
+ thread->GetChannel()->set_outgoing_message_filter(filter); |
+ } |
+#endif |
+ |
// chrome: and chrome-search: pages should not be accessible by bookmarklets |
// or javascript: URLs typed in the omnibox. |
WebSecurityPolicy::registerURLSchemeAsNotAllowingJavascriptURLs( |