[SCM] WebKit Debian packaging branch, webkit-1.2, updated. upstream/1.1.90-6072-g9a69373

krit at webkit.org krit at webkit.org
Wed Apr 7 23:38:21 UTC 2010


The following commit has been merged in the webkit-1.2 branch:
commit 854980c69904ac99429c78a066b94d5939218753
Author: krit at webkit.org <krit at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Fri Nov 13 14:57:13 2009 +0000

    2009-11-13  Dirk Schulze  <krit at webkit.org>
    
            Reviewed by Gustavo Noronha.
    
            [CAIRO] shadow support for Canvas and SVG
            [https://bugs.webkit.org/show_bug.cgi?id=30960]
    
            This is the fix of a regression, caused by the shadow patch
            from the bug above. Reinserted the save and restore calls
            that were accidently removed by the previous patch.
    
            * platform/graphics/cairo/GraphicsContextCairo.cpp:
            (WebCore::setPlatformFill):
            (WebCore::setPlatformStroke):
    
            Skip fast/canvas/canvas-shadow.html we need to enable filters
            on cairo to pass this test.
    
            * platform/gtk/Skipped:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@50939 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 4930965..6f9d4d2 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,12 @@
+2009-11-13  Dirk Schulze  <krit at webkit.org>
+
+        Reviewed by Gustavo Noronha.
+
+        Skip fast/canvas/canvas-shadow.html we need to enable filters
+        on cairo to pass this test.
+
+        * platform/gtk/Skipped:
+
 2009-11-13  Gustavo Noronha Silva  <gustavo.noronha at collabora.co.uk>
 
         Skip one more new test.
diff --git a/LayoutTests/platform/gtk/Skipped b/LayoutTests/platform/gtk/Skipped
index dc726a2..fd2932d 100644
--- a/LayoutTests/platform/gtk/Skipped
+++ b/LayoutTests/platform/gtk/Skipped
@@ -1255,6 +1255,7 @@ fast/canvas/canvas-bg-zoom.html
 fast/canvas/canvas-empty-image-pattern.html
 fast/canvas/canvas-getImageData.html
 fast/canvas/canvas-gradient-addStop-error.html
+fast/canvas/canvas-shadow.html
 fast/canvas/canvas-transform-identity.html
 fast/canvas/canvas-transform-infinity.html
 fast/canvas/canvas-transform-multiply.html
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index dfe4cf6..455a7fc 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2009-11-13  Dirk Schulze  <krit at webkit.org>
+
+        Reviewed by Gustavo Noronha.
+
+        [CAIRO] shadow support for Canvas and SVG
+        [https://bugs.webkit.org/show_bug.cgi?id=30960]
+        
+        This is the fix of a regression, caused by the shadow patch
+        from the bug above. Reinserted the save and restore calls
+        that were accidently removed by the previous patch.
+
+        * platform/graphics/cairo/GraphicsContextCairo.cpp:
+        (WebCore::setPlatformFill):
+        (WebCore::setPlatformStroke):
+
 2009-11-13  Pavel Feldman  <pfeldman at chromium.org>
 
         Not reviewed. Reverting r50908 since it makes inspector tests
diff --git a/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp b/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp
index bad6ef1..11e7e6e 100644
--- a/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp
+++ b/WebCore/platform/graphics/cairo/GraphicsContextCairo.cpp
@@ -75,6 +75,7 @@ static inline void setColor(cairo_t* cr, const Color& col)
 
 static inline void setPlatformFill(GraphicsContext* context, cairo_t* cr, GraphicsContextPrivate* gcp)
 {
+    cairo_save(cr);
     switch (gcp->state.fillType) {
     case SolidColorType: {
         Color fillColor = colorWithOverrideAlpha(context->fillColor().rgb(), context->fillColor().alpha() / 255.f * gcp->state.globalAlpha);
@@ -95,10 +96,12 @@ static inline void setPlatformFill(GraphicsContext* context, cairo_t* cr, Graphi
         cairo_paint_with_alpha(cr, gcp->state.globalAlpha);
         break;
     }
+    cairo_restore(cr);
 }
 
 static inline void setPlatformStroke(GraphicsContext* context, cairo_t* cr, GraphicsContextPrivate* gcp)
 {
+    cairo_save(cr);
     switch (gcp->state.strokeType) {
     case SolidColorType: {
         Color strokeColor = colorWithOverrideAlpha(context->strokeColor().rgb(), context->strokeColor().alpha() / 255.f * gcp->state.globalAlpha);
@@ -120,6 +123,7 @@ static inline void setPlatformStroke(GraphicsContext* context, cairo_t* cr, Grap
         cairo_pop_group_to_source(cr);
     }
     cairo_stroke_preserve(cr);
+    cairo_restore(cr);
 }
 
 // A fillRect helper

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list