Title: [100099] trunk/Source
Revision
100099
Author
[email protected]
Date
2011-11-13 21:14:41 -0800 (Sun, 13 Nov 2011)

Log Message

[chromium] LayerRendererChromium::initialize should fail when GaphicsContext3D::makeCurrent fails
https://bugs.webkit.org/show_bug.cgi?id=72102

Reviewed by James Robinson.

Source/WebCore:

* platform/graphics/chromium/LayerRendererChromium.cpp:
(WebCore::LayerRendererChromium::initialize):
(WebCore::LayerRendererChromium::releaseRenderSurfaceTextures):
(WebCore::LayerRendererChromium::makeContextCurrent):
* platform/graphics/chromium/cc/CCThreadProxy.cpp:
(WebCore::CCThreadProxy::initializeLayerRendererOnImplThread):

Source/WebKit/chromium:

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::setIsAcceleratedCompositingActive):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (100098 => 100099)


--- trunk/Source/WebCore/ChangeLog	2011-11-14 03:06:43 UTC (rev 100098)
+++ trunk/Source/WebCore/ChangeLog	2011-11-14 05:14:41 UTC (rev 100099)
@@ -1,3 +1,17 @@
+2011-11-13  Nat Duca  <[email protected]>
+
+        [chromium] LayerRendererChromium::initialize should fail when GaphicsContext3D::makeCurrent fails
+        https://bugs.webkit.org/show_bug.cgi?id=72102
+
+        Reviewed by James Robinson.
+
+        * platform/graphics/chromium/LayerRendererChromium.cpp:
+        (WebCore::LayerRendererChromium::initialize):
+        (WebCore::LayerRendererChromium::releaseRenderSurfaceTextures):
+        (WebCore::LayerRendererChromium::makeContextCurrent):
+        * platform/graphics/chromium/cc/CCThreadProxy.cpp:
+        (WebCore::CCThreadProxy::initializeLayerRendererOnImplThread):
+
 2011-11-11  Vincent Scheib  <[email protected]>
 
         Mouse Lock: MouseEvent IDL

Modified: trunk/Source/WebCore/platform/graphics/chromium/LayerRendererChromium.cpp (100098 => 100099)


--- trunk/Source/WebCore/platform/graphics/chromium/LayerRendererChromium.cpp	2011-11-14 03:06:43 UTC (rev 100098)
+++ trunk/Source/WebCore/platform/graphics/chromium/LayerRendererChromium.cpp	2011-11-14 05:14:41 UTC (rev 100099)
@@ -180,7 +180,9 @@
 
 bool LayerRendererChromium::initialize()
 {
-    m_context->makeContextCurrent();
+    if (!m_context->makeContextCurrent())
+        return false;
+
     if (settings().acceleratePainting)
         m_capabilities.usingAcceleratedPainting = true;
 
@@ -264,7 +266,8 @@
 
 void LayerRendererChromium::releaseRenderSurfaceTextures()
 {
-    m_renderSurfaceTextureManager->evictAndDeleteAllTextures(m_renderSurfaceTextureAllocator.get());
+    if (m_renderSurfaceTextureManager)
+        m_renderSurfaceTextureManager->evictAndDeleteAllTextures(m_renderSurfaceTextureAllocator.get());
 }
 
 void LayerRendererChromium::viewportChanged()
@@ -629,8 +632,7 @@
 
 bool LayerRendererChromium::makeContextCurrent()
 {
-    m_context->makeContextCurrent();
-    return true;
+    return m_context->makeContextCurrent();
 }
 
 // Sets the coordinate range of content that ends being drawn onto the target render surface.

Modified: trunk/Source/WebCore/platform/graphics/chromium/cc/CCThreadProxy.cpp (100098 => 100099)


--- trunk/Source/WebCore/platform/graphics/chromium/cc/CCThreadProxy.cpp	2011-11-14 03:06:43 UTC (rev 100098)
+++ trunk/Source/WebCore/platform/graphics/chromium/cc/CCThreadProxy.cpp	2011-11-14 05:14:41 UTC (rev 100099)
@@ -521,11 +521,11 @@
         *capabilities = m_layerTreeHostImpl->layerRendererCapabilities();
         if (capabilities->usingSwapCompleteCallback)
             m_schedulerOnImplThread->setMaxFramesPending(2);
+
+        m_inputHandlerOnImplThread = CCInputHandler::create(m_layerTreeHostImpl.get());
+        *compositorIdentifier = m_inputHandlerOnImplThread->identifier();
     }
 
-    m_inputHandlerOnImplThread = CCInputHandler::create(m_layerTreeHostImpl.get());
-    *compositorIdentifier = m_inputHandlerOnImplThread->identifier();
-
     completion->signal();
 }
 

Modified: trunk/Source/WebKit/chromium/ChangeLog (100098 => 100099)


--- trunk/Source/WebKit/chromium/ChangeLog	2011-11-14 03:06:43 UTC (rev 100098)
+++ trunk/Source/WebKit/chromium/ChangeLog	2011-11-14 05:14:41 UTC (rev 100099)
@@ -1,3 +1,13 @@
+2011-11-13  Nat Duca  <[email protected]>
+
+        [chromium] LayerRendererChromium::initialize should fail when GaphicsContext3D::makeCurrent fails
+        https://bugs.webkit.org/show_bug.cgi?id=72102
+
+        Reviewed by James Robinson.
+
+        * src/WebViewImpl.cpp:
+        (WebKit::WebViewImpl::setIsAcceleratedCompositingActive):
+
 2011-11-13  Kent Tamura  <[email protected]>
 
         [Chromium] Remove WebFileChooserParams::acceptTypes

Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.cpp (100098 => 100099)


--- trunk/Source/WebKit/chromium/src/WebViewImpl.cpp	2011-11-14 03:06:43 UTC (rev 100098)
+++ trunk/Source/WebKit/chromium/src/WebViewImpl.cpp	2011-11-14 05:14:41 UTC (rev 100099)
@@ -2692,6 +2692,8 @@
             if (m_pageOverlay)
                 m_pageOverlay->update();
         } else {
+            m_layerTreeHost.clear();
+            m_nonCompositedContentHost.clear();
             m_isAcceleratedCompositingActive = false;
             m_client->didDeactivateCompositor();
             m_compositorCreationFailed = true;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to