[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

commit-queue at webkit.org commit-queue at webkit.org
Wed Dec 22 14:21:24 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit ff7cfda5a0b2ab308381daec03825bed92d30663
Author: commit-queue at webkit.org <commit-queue at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Oct 7 01:26:17 2010 +0000

    2010-10-06  Vincent Scheib  <scheib at chromium.org>
    
            Reviewed by Kenneth Russell.
    
            [chromium] Thumbnail generation asserts on zero alpha values.
            https://bugs.webkit.org/show_bug.cgi?id=47292
    
            Test: Tested manually by running debug mode, and analyzing in PIX.
    
            * platform/graphics/chromium/LayerRendererChromium.cpp:
            (WebCore::LayerRendererChromium::drawLayers):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@69266 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 521dae4..9031081 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,15 @@
+2010-10-06  Vincent Scheib  <scheib at chromium.org>
+
+        Reviewed by Kenneth Russell.
+
+        [chromium] Thumbnail generation asserts on zero alpha values.
+        https://bugs.webkit.org/show_bug.cgi?id=47292
+
+        Test: Tested manually by running debug mode, and analyzing in PIX.
+
+        * platform/graphics/chromium/LayerRendererChromium.cpp:
+        (WebCore::LayerRendererChromium::drawLayers):
+
 2010-10-06  Kinuko Yasuda  <kinuko at chromium.org>
 
         Unreviewed, trying to fix chromium Windows build.
diff --git a/WebCore/platform/graphics/chromium/LayerRendererChromium.cpp b/WebCore/platform/graphics/chromium/LayerRendererChromium.cpp
index a4b6fab..411b420 100644
--- a/WebCore/platform/graphics/chromium/LayerRendererChromium.cpp
+++ b/WebCore/platform/graphics/chromium/LayerRendererChromium.cpp
@@ -285,11 +285,15 @@ void LayerRendererChromium::drawLayers(const IntRect& visibleRect, const IntRect
     const ContentLayerChromium::SharedValues* contentLayerValues = contentLayerSharedValues();
     useShader(contentLayerValues->contentShaderProgram());
     GLC(m_context, m_context->uniform1i(contentLayerValues->shaderSamplerLocation(), 0));
+    // Mask out writes to alpha channel: ClearType via Skia results in invalid
+    // zero alpha values on text glyphs. The root layer is always opaque.
+    GLC(m_context, m_context->colorMask(true, true, true, false));
     TransformationMatrix layerMatrix;
     layerMatrix.translate3d(visibleRect.width() * 0.5f, visibleRect.height() * 0.5f, 0);
     LayerChromium::drawTexturedQuad(m_context.get(), m_projectionMatrix, layerMatrix,
                                     visibleRect.width(), visibleRect.height(), 1,
                                     contentLayerValues->shaderMatrixLocation(), contentLayerValues->shaderAlphaLocation());
+    GLC(m_context, m_context->colorMask(true, true, true, true));
 
     // If culling is enabled then we will cull the backface.
     GLC(m_context, m_context->cullFace(GraphicsContext3D::BACK));

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list