diff options
author | apatrick@chromium.org <apatrick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-27 19:21:55 +0000 |
---|---|---|
committer | apatrick@chromium.org <apatrick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-06-27 19:21:55 +0000 |
commit | 2d7c85529b0210e148d70eb3d0edf485d6521708 (patch) | |
tree | 59152cec5d13a4f91b88ffa8610ca9a82f4fdcce /chrome/browser/renderer_host/render_widget_host_view_mac.mm | |
parent | be16cf2bcf61a6ac255c347a6ba8c65d213a5a11 (diff) | |
download | chromium_src-2d7c85529b0210e148d70eb3d0edf485d6521708.zip chromium_src-2d7c85529b0210e148d70eb3d0edf485d6521708.tar.gz chromium_src-2d7c85529b0210e148d70eb3d0edf485d6521708.tar.bz2 |
GPU compositing surface handle is no longer sent to renderer process.
Instead it is stored in a map in RenderWidgetHelper indexed by RenderWidgetHost route ID. This allows the UI thread to maintain the mapping as windows are created and destroyed and the IO thread to lookup the mapping in order to create GL contexts that render to the windows.
This avoids a race where JavaScript would open a popup window and immediately try to use an accelerated canvas to render to it (2D canvas or WebGL canvas). <-- This is no longer true of this patch. There was a potential deadlock.
WebGL canvas used to work in this case only because it would fall back to using ReadPixels.
This goes some way to fixing the bug referenced below but does not fix it completely.BUG=80703
Review URL: http://codereview.chromium.org/7136001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90617 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/renderer_host/render_widget_host_view_mac.mm')
-rw-r--r-- | chrome/browser/renderer_host/render_widget_host_view_mac.mm | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/chrome/browser/renderer_host/render_widget_host_view_mac.mm b/chrome/browser/renderer_host/render_widget_host_view_mac.mm index 64aa8c0..d7d19cf 100644 --- a/chrome/browser/renderer_host/render_widget_host_view_mac.mm +++ b/chrome/browser/renderer_host/render_widget_host_view_mac.mm @@ -246,7 +246,7 @@ RenderWidgetHostViewMac::RenderWidgetHostViewMac(RenderWidgetHost* widget) // hierarchy right after calling us. cocoa_view_ = [[[RenderWidgetHostViewCocoa alloc] initWithRenderWidgetHostViewMac:this] autorelease]; - render_widget_host_->set_view(this); + render_widget_host_->SetView(this); if (render_widget_host_->IsRenderView()) { new SpellCheckRenderViewObserver( |