Index: content/renderer/render_thread_impl.cc |
diff --git a/content/renderer/render_thread_impl.cc b/content/renderer/render_thread_impl.cc |
index c888a9f3bb2cb5eb52810db906c8480cb43f57f2..31d732a8b21aea94761f50a33271ba1584b3f541 100644 |
--- a/content/renderer/render_thread_impl.cc |
+++ b/content/renderer/render_thread_impl.cc |
@@ -56,6 +56,7 @@ |
#include "content/renderer/dom_storage/webstoragearea_impl.h" |
#include "content/renderer/dom_storage/webstoragenamespace_impl.h" |
#include "content/renderer/gpu/compositor_thread.h" |
+#include "content/renderer/gpu/compositor_output_surface.h" |
#include "content/renderer/gpu/gpu_benchmarking_extension.h" |
#include "content/renderer/media/audio_hardware.h" |
#include "content/renderer/media/audio_input_message_filter.h" |
@@ -70,6 +71,7 @@ |
#include "content/renderer/renderer_webkitplatformsupport_impl.h" |
#include "grit/content_resources.h" |
#include "ipc/ipc_channel_handle.h" |
+#include "ipc/ipc_forwarding_message_filter.h" |
#include "ipc/ipc_platform_file.h" |
#include "media/base/media.h" |
#include "net/base/net_errors.h" |
@@ -301,6 +303,9 @@ RenderThreadImpl::~RenderThreadImpl() { |
if (file_thread_.get()) |
file_thread_->Stop(); |
+ RemoveFilter(compositor_output_surface_filter_.get()); |
+ compositor_output_surface_filter_ = NULL; |
+ |
if (compositor_initialized_) { |
WebKit::WebCompositor::shutdown(); |
compositor_initialized_ = false; |
@@ -508,6 +513,14 @@ void RenderThreadImpl::EnsureWebKitInitialized() { |
} |
compositor_initialized_ = true; |
+ MessageLoop* output_surface_loop = content::IsThreadedCompositingEnabled() ? |
jbates
2012/08/08 16:55:09
Should this be replaced with the existing enable f
|
+ compositor_thread_->message_loop() : |
piman
2012/08/08 16:47:43
nit: indenting for continuations is +4.
|
+ MessageLoop::current(); |
+ |
+ compositor_output_surface_filter_ = CompositorOutputSurface::CreateFilter( |
+ output_surface_loop->message_loop_proxy()); |
+ AddFilter(compositor_output_surface_filter_.get()); |
+ |
WebScriptController::enableV8SingleThreadMode(); |
RenderThreadImpl::RegisterSchemes(); |