Changeset 90185 in webkit


Ignore:
Timestamp:
Jun 30, 2011 4:46:54 PM (13 years ago)
Author:
commit-queue@webkit.org
Message:

2011-06-30 John Bates <jbates@google.com>

Reviewed by James Robinson.

Chromium bug: Compositing on a lost context causes latch deadlocks.
The cause of deadlock was that a setLatch command is added to the lost
compositor GL context, and a waitLatch would never complete on a child context.
This change checks whether the compositor context is in error state before
doing the compositing.
https://bugs.webkit.org/show_bug.cgi?id=63681

  • src/WebViewImpl.cpp: (WebKit::WebViewImpl::composite):
Location:
trunk/Source/WebKit/chromium
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/chromium/ChangeLog

    r90167 r90185  
     12011-06-30  John Bates  <jbates@google.com>
     2
     3        Reviewed by James Robinson.
     4
     5        Chromium bug: Compositing on a lost context causes latch deadlocks.
     6        The cause of deadlock was that a setLatch command is added to the lost
     7        compositor GL context, and a waitLatch would never complete on a child context.
     8        This change checks whether the compositor context is in error state before
     9        doing the compositing.
     10        https://bugs.webkit.org/show_bug.cgi?id=63681
     11
     12        * src/WebViewImpl.cpp:
     13        (WebKit::WebViewImpl::composite):
     14
    1152011-06-30  Cary Clark  <caryclark@google.com>
    216
  • trunk/Source/WebKit/chromium/src/WebViewImpl.cpp

    r90119 r90185  
    11681168        return;
    11691169    }
    1170     doComposite();
    1171 
    1172     // Put result onscreen.
    1173     m_layerRenderer->present();
     1170
     1171    // Do not composite if the compositor context is already lost.
     1172    if (!m_layerRenderer->isCompositorContextLost()) {
     1173        doComposite();
     1174
     1175        // Put result onscreen.
     1176        m_layerRenderer->present();
     1177    }
    11741178
    11751179    if (m_layerRenderer->isCompositorContextLost()) {
Note: See TracChangeset for help on using the changeset viewer.