[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 13:06:31 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 125a7b22b3b10080f9a43e378e249992406fcb07
Author: commit-queue at webkit.org <commit-queue at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Sep 7 08:12:18 2010 +0000

    2010-09-07  James Kozianski  <koz at chromium.org>
    
            Reviewed by Kent Tamura.
    
            Adds tests for percent-based attributes on the <meter> element.
    
            * fast/dom/HTMLMeterElement/meter-percent-size-expected.txt: Added.
            * fast/dom/HTMLMeterElement/meter-percent-size.html: Added.
    2010-09-07  James Kozianski  <koz at chromium.org>
    
            Reviewed by Kent Tamura.
    
            Crash rendering <meter/> with percent padding
            https://bugs.webkit.org/show_bug.cgi?id=45081
    
            Avoids a crash caused by RenderMeter checking its own dimensions to
            determine whether it needs layout. The crash is avoided by removing
            the check and always calling setNeedsLayout(true).
    
            Test: fast/dom/HTMLMeterElement/meter-percent-size.html
    
            * rendering/RenderIndicator.cpp:
            (WebCore::RenderIndicator::updateFromElement):
            * rendering/RenderIndicator.h:
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@66864 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 7f7e728..d6cdf5e 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,12 @@
+2010-09-07  James Kozianski  <koz at chromium.org>
+
+        Reviewed by Kent Tamura.
+
+        Adds tests for percent-based attributes on the <meter> element.
+
+        * fast/dom/HTMLMeterElement/meter-percent-size-expected.txt: Added.
+        * fast/dom/HTMLMeterElement/meter-percent-size.html: Added.
+
 2010-09-06  Adam Barth  <abarth at webkit.org>
 
         Reviewed by Sam Weinig.
diff --git a/LayoutTests/fast/dom/HTMLMeterElement/meter-percent-size-expected.txt b/LayoutTests/fast/dom/HTMLMeterElement/meter-percent-size-expected.txt
new file mode 100644
index 0000000..a7cffbd
--- /dev/null
+++ b/LayoutTests/fast/dom/HTMLMeterElement/meter-percent-size-expected.txt
@@ -0,0 +1,3 @@
+Tests that percentage sizes on a meter element doesn't crash.
+
+       PASS
diff --git a/LayoutTests/fast/dom/HTMLMeterElement/meter-percent-size.html b/LayoutTests/fast/dom/HTMLMeterElement/meter-percent-size.html
new file mode 100644
index 0000000..dbaa97c
--- /dev/null
+++ b/LayoutTests/fast/dom/HTMLMeterElement/meter-percent-size.html
@@ -0,0 +1,14 @@
+<html>
+  <body>
+    <p>Tests that percentage sizes on a meter element doesn't crash.</p>
+    <meter style="width: 1%;">30%</meter>
+    <meter style="height: 1%;">30%</meter>
+    <meter style="margin: 1%;">30%</meter>
+    <meter style="padding: 1%;">30%</meter>
+    PASS
+    <script>
+    if (window.layoutTestController)
+        layoutTestController.dumpAsText();
+    </script>
+  </body>
+</html>
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index a685375..27331b7 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,20 @@
+2010-09-07  James Kozianski  <koz at chromium.org>
+
+        Reviewed by Kent Tamura.
+
+        Crash rendering <meter/> with percent padding
+        https://bugs.webkit.org/show_bug.cgi?id=45081
+
+        Avoids a crash caused by RenderMeter checking its own dimensions to
+        determine whether it needs layout. The crash is avoided by removing
+        the check and always calling setNeedsLayout(true).
+
+        Test: fast/dom/HTMLMeterElement/meter-percent-size.html
+
+        * rendering/RenderIndicator.cpp:
+        (WebCore::RenderIndicator::updateFromElement):
+        * rendering/RenderIndicator.h:
+
 2010-09-06  Adam Barth  <abarth at webkit.org>
 
         Reviewed by Sam Weinig.
diff --git a/WebCore/rendering/RenderIndicator.cpp b/WebCore/rendering/RenderIndicator.cpp
index afff9c2..32ef916 100644
--- a/WebCore/rendering/RenderIndicator.cpp
+++ b/WebCore/rendering/RenderIndicator.cpp
@@ -51,31 +51,12 @@ void RenderIndicator::layout()
     setNeedsLayout(false);
 }
 
-void RenderIndicator::styleDidChange(StyleDifference diff, const RenderStyle* oldStyle)
-{
-    RenderBlock::styleDidChange(diff, oldStyle);
-    requestLayoutForParts();
-}
-
 void RenderIndicator::updateFromElement()
 {
-    requestLayoutForParts();
+    setNeedsLayout(true);
     repaint();
 }
 
-bool RenderIndicator::hasParts() const
-{
-    if (RenderObject* last = lastChild())
-        return last->isRenderBlock();
-    return false;
-}
-
-void RenderIndicator::requestLayoutForParts()
-{
-    if (shouldHaveParts() || hasParts())
-        setNeedsLayout(true);
-}
-
 } // namespace WebCore
 
 #endif
diff --git a/WebCore/rendering/RenderIndicator.h b/WebCore/rendering/RenderIndicator.h
index 2d82a09..b1f4acf 100644
--- a/WebCore/rendering/RenderIndicator.h
+++ b/WebCore/rendering/RenderIndicator.h
@@ -34,15 +34,10 @@ public:
 protected:
     virtual void layout();
     virtual void updateFromElement();
-    virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle);
     virtual bool requiresForcedStyleRecalcPropagation() const { return true; }
 
     virtual void layoutParts() = 0;
     virtual bool shouldHaveParts() const = 0;
-
-private:
-    void requestLayoutForParts();
-    bool hasParts() const;
 };
 
 } // namespace WebCore

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list