Commit 5e6c2267 authored by piman@chromium.org's avatar piman@chromium.org

Fix lost context race with fullscreen pepper widget.

An ill-timed lost context could destroy the compositor context, while a
composite has been scheduled. This makes sure we reset
is_accelerated_compositing_active_ so that we don't try to use the 3D path in
this case.

BUG=None
TEST=Fullscreen with Pepper Flash on ARM devices


Review URL: http://codereview.chromium.org/7628023

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96677 0039d316-1c4b-4281-b951-d872f2087c98
parent 95b11e8d
......@@ -462,10 +462,10 @@ bool RenderWidgetFullscreenPepper::InitContext() {
}
bool RenderWidgetFullscreenPepper::CheckCompositing() {
bool compositing = webwidget_->isAcceleratedCompositingActive();
if (compositing != is_accelerated_compositing_active_) {
bool compositing =
webwidget_ && webwidget_->isAcceleratedCompositingActive();
if (compositing != is_accelerated_compositing_active_)
didActivateAcceleratedCompositing(compositing);
}
return compositing;
}
......@@ -489,6 +489,7 @@ void RenderWidgetFullscreenPepper::OnLostContext(
program_ = 0;
buffer_ = 0;
OnSwapBuffersAborted();
CheckCompositing();
}
void RenderWidgetFullscreenPepper::OnSwapBuffersCompleteByRendererGLContext() {
......
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