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

simon.fraser at apple.com simon.fraser at apple.com
Wed Dec 22 15:37:48 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit d818b9b2623d87a499965c25ca0cbc01107c24de
Author: simon.fraser at apple.com <simon.fraser at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Nov 9 17:45:41 2010 +0000

    2010-11-09  Simon Fraser  <simon.fraser at apple.com>
    
            Reviewed by Dave Hyatt.
    
            https://bugs.webkit.org/show_bug.cgi?id=49197
            <rdar://problem/8642746>
    
            When starting an accelerated transform animation on a renderer, check
            that it's a RenderBox before allow transform animations (and before
            calling borderBoxRect()), because transforms are currently disallowed
            on inline elements.
    
            Test: animations/animation-on-inline-crash.html
    
            * rendering/RenderLayerBacking.cpp:
            (WebCore::RenderLayerBacking::startAnimation):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@71642 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index d508f4d..f8c4be8 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,15 @@
+2010-11-09  Simon Fraser  <simon.fraser at apple.com>
+
+        Reviewed by Dave Hyatt.
+
+        https://bugs.webkit.org/show_bug.cgi?id=49197
+        <rdar://problem/8642746>
+
+        Test that starts a transform animation on an inline.
+        
+        * animations/animation-on-inline-crash-expected.txt: Added.
+        * animations/animation-on-inline-crash.html: Added.
+
 2010-11-09  Mihai Parparita  <mihaip at chromium.org>
 
         Unreviewed Chromium drt_expectations.txt update.
diff --git a/LayoutTests/animations/animation-on-inline-crash-expected.txt b/LayoutTests/animations/animation-on-inline-crash-expected.txt
new file mode 100644
index 0000000..b6660ec
--- /dev/null
+++ b/LayoutTests/animations/animation-on-inline-crash-expected.txt
@@ -0,0 +1,3 @@
+Test passes if it does not crash.
+
+Hello world
diff --git a/LayoutTests/animations/animation-on-inline-crash.html b/LayoutTests/animations/animation-on-inline-crash.html
new file mode 100644
index 0000000..1945465
--- /dev/null
+++ b/LayoutTests/animations/animation-on-inline-crash.html
@@ -0,0 +1,27 @@
+<style>
+    .box {
+      position: relative; 
+      -webkit-animation-delay: 5ms;
+      -webkit-animation-name: anim;
+    }
+    @-webkit-keyframes anim {
+      from { -webkit-transform: translateX(10px); }
+    }
+</style>
+<script type="text/javascript" charset="utf-8">
+    if (window.layoutTestController) {
+        layoutTestController.dumpAsText();
+        layoutTestController.waitUntilDone();
+    }
+    
+    function waitForAnimation()
+    {
+        window.setTimeout(function() {
+            if (window.layoutTestController)
+                layoutTestController.notifyDone();
+        }, 50);
+    }
+    window.addEventListener('load', waitForAnimation, false);
+</script>
+<p>Test passes if it does not crash.</p>
+<span class="box">Hello world</span>
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index f7a4c75..934267d 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -2,6 +2,23 @@
 
         Reviewed by Dave Hyatt.
 
+        https://bugs.webkit.org/show_bug.cgi?id=49197
+        <rdar://problem/8642746>
+        
+        When starting an accelerated transform animation on a renderer, check
+        that it's a RenderBox before allow transform animations (and before
+        calling borderBoxRect()), because transforms are currently disallowed
+        on inline elements.
+
+        Test: animations/animation-on-inline-crash.html
+
+        * rendering/RenderLayerBacking.cpp:
+        (WebCore::RenderLayerBacking::startAnimation):
+
+2010-11-09  Simon Fraser  <simon.fraser at apple.com>
+
+        Reviewed by Dave Hyatt.
+
         https://bugs.webkit.org/show_bug.cgi?id=49204
         <rdar://problem/8643412>
         
diff --git a/WebCore/rendering/RenderLayerBacking.cpp b/WebCore/rendering/RenderLayerBacking.cpp
index 4f16800..15def29 100644
--- a/WebCore/rendering/RenderLayerBacking.cpp
+++ b/WebCore/rendering/RenderLayerBacking.cpp
@@ -1101,7 +1101,7 @@ bool RenderLayerBacking::showRepaintCounter() const
 bool RenderLayerBacking::startAnimation(double timeOffset, const Animation* anim, const KeyframeList& keyframes)
 {
     bool hasOpacity = keyframes.containsProperty(CSSPropertyOpacity);
-    bool hasTransform = keyframes.containsProperty(CSSPropertyWebkitTransform);
+    bool hasTransform = renderer()->isBox() && keyframes.containsProperty(CSSPropertyWebkitTransform);
     
     if (!hasOpacity && !hasTransform)
         return false;

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list