Title: [133221] trunk
Revision
133221
Author
[email protected]
Date
2012-11-01 13:42:29 -0700 (Thu, 01 Nov 2012)

Log Message

REGRESSION (r128837): mathml/presentation/subsup.xhtml became flaky
https://bugs.webkit.org/show_bug.cgi?id=97390

Reviewed by Ojan Vafai.

Source/WebCore:

In a RenderMathMLSubSup, we need to set the base's wrapper's style so that baseHeight
in layout() will be the base's true height, without any flexbox stretching.

Tested by existing tests.

* rendering/mathml/RenderMathMLSubSup.cpp:
(WebCore::RenderMathMLSubSup::fixAnonymousStyles):
(WebCore::RenderMathMLSubSup::addChild):
(WebCore::RenderMathMLSubSup::styleDidChange):
* rendering/mathml/RenderMathMLSubSup.h:
(RenderMathMLSubSup):

LayoutTests:

* platform/chromium/TestExpectations:
* platform/efl/TestExpectations:
* platform/gtk/TestExpectations:
* platform/mac/TestExpectations:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (133220 => 133221)


--- trunk/LayoutTests/ChangeLog	2012-11-01 20:35:00 UTC (rev 133220)
+++ trunk/LayoutTests/ChangeLog	2012-11-01 20:42:29 UTC (rev 133221)
@@ -1,3 +1,15 @@
+2012-11-01  David Barton  <[email protected]>
+
+        REGRESSION (r128837): mathml/presentation/subsup.xhtml became flaky
+        https://bugs.webkit.org/show_bug.cgi?id=97390
+
+        Reviewed by Ojan Vafai.
+
+        * platform/chromium/TestExpectations:
+        * platform/efl/TestExpectations:
+        * platform/gtk/TestExpectations:
+        * platform/mac/TestExpectations:
+
 2012-11-01  Stephen White  <[email protected]>
 
         [chromium] Unreviewed gardening.  Mark an inspector test as flaky.

Modified: trunk/LayoutTests/platform/chromium/TestExpectations (133220 => 133221)


--- trunk/LayoutTests/platform/chromium/TestExpectations	2012-11-01 20:35:00 UTC (rev 133220)
+++ trunk/LayoutTests/platform/chromium/TestExpectations	2012-11-01 20:42:29 UTC (rev 133221)
@@ -1984,9 +1984,11 @@
 # The mathml pixel tests will be changing for a few days. They'll need rebaseline after that.
 webkit.org/b/96960 [ Android Linux Win ] mathml/xHeight.xhtml [ Pass Failure ImageOnlyFailure ]
 webkit.org/b/96960 [ Android Linux Win ] mathml/presentation [ Pass Failure ImageOnlyFailure ]
-# The next 2 are flaky, but I have a fix and will submit it soon.
+# Needs rebaseline after bug 97390
+webkit.org/b/97390 [ Mac ] mathml/presentation/mo-stretch.html [ Failure Pass ]
+webkit.org/b/97390 [ Mac ] mathml/presentation/row-alignment.xhtml [ Failure Pass ]
+webkit.org/b/97390 [ Mac ] mathml/presentation/tables.xhtml [ Failure Pass ]
 webkit.org/b/97390 [ Mac ] mathml/presentation/subsup.xhtml [ Failure Pass ]
-webkit.org/b/97390 [ Mac ] mathml/presentation/msubsup-base-changed.xhtml [ ImageOnlyFailure Pass ]
 # Once chromium decides to definitely enable MathML, we can delete the old platform/chromium baseline for this:
 webkit.org/b/96960 http/tests/xmlviewer/dumpAsText/mathml.xml [ Pass Failure ]
 

Modified: trunk/LayoutTests/platform/efl/TestExpectations (133220 => 133221)


--- trunk/LayoutTests/platform/efl/TestExpectations	2012-11-01 20:35:00 UTC (rev 133220)
+++ trunk/LayoutTests/platform/efl/TestExpectations	2012-11-01 20:42:29 UTC (rev 133221)
@@ -1570,15 +1570,17 @@
 webkit.org/b/99878 css3/flexbox/flexbox-baseline-margins.html [ Missing ImageOnlyFailure ]
 
 webkit.org/b/100463 mathml/msubsup-fuzz.html [ Crash Pass ]
-# Needs rebaseline eventually
+# Needs rebaseline
 webkit.org/b/97990 mathml/presentation/attributes.xhtml [ Failure ]
 webkit.org/b/97990 mathml/presentation/fractions.xhtml [ Failure ]
 webkit.org/b/97990 mathml/presentation/fractions-vertical-alignment.xhtml [ Failure ]
-webkit.org/b/97990 mathml/presentation/mo-stretch.html [ Failure ]
 webkit.org/b/97990 mathml/presentation/roots.xhtml [ Failure ]
-webkit.org/b/97990 mathml/presentation/row-alignment.xhtml [ Failure ]
-webkit.org/b/97990 mathml/presentation/subsup.xhtml [ Failure ]
 webkit.org/b/99921 mathml/presentation/fenced.xhtml [ Failure ]
+# Needs rebaseline after bug 97390
+webkit.org/b/97390 mathml/presentation/mo-stretch.html [ Failure Pass ]
+webkit.org/b/97390 mathml/presentation/row-alignment.xhtml [ Failure Pass ]
+webkit.org/b/97390 mathml/presentation/tables.xhtml [ Failure Pass ]
+webkit.org/b/97390 mathml/presentation/subsup.xhtml [ Failure Pass ]
 
 # css3-conditionals support is not yet enabled.
 webkit.org/b/86146 css3/supports.html

Modified: trunk/LayoutTests/platform/gtk/TestExpectations (133220 => 133221)


--- trunk/LayoutTests/platform/gtk/TestExpectations	2012-11-01 20:35:00 UTC (rev 133220)
+++ trunk/LayoutTests/platform/gtk/TestExpectations	2012-11-01 20:42:29 UTC (rev 133221)
@@ -423,13 +423,16 @@
 webkit.org/b/86146 css3/supports.html
 
 webkit.org/b/100463 mathml/msubsup-fuzz.html [ Crash Pass ]
-# MathML layout is being tuned/reworked.
+# Needs rebaseline
 webkit.org/b/99921 mathml/presentation/fenced.xhtml [ Failure ]
 webkit.org/b/99921 mathml/presentation/mo.xhtml [ Failure ]
-webkit.org/b/99921 mathml/presentation/mo-stretch.html [ Failure ]
 webkit.org/b/99921 mathml/presentation/over.xhtml [ Failure ]
 webkit.org/b/99921 mathml/presentation/row.xhtml [ Failure ]
-webkit.org/b/99921 mathml/presentation/row-alignment.xhtml [ Failure ]
+# Needs rebaseline after bug 97390
+webkit.org/b/97390 mathml/presentation/mo-stretch.html [ Failure Pass ]
+webkit.org/b/97390 mathml/presentation/row-alignment.xhtml [ Failure Pass ]
+webkit.org/b/97390 mathml/presentation/tables.xhtml [ Failure Pass ]
+webkit.org/b/97390 mathml/presentation/subsup.xhtml [ Failure Pass ]
 
 # Requires Resolution Media Query support
 webkit.org/b/100137 fast/media/mq-resolution.html [ Failure ]
@@ -581,9 +584,6 @@
 
 webkit.org/b/95430 fast/layers/scroll-no-visible-content-but-visible-descendant.html [ ImageOnlyFailure Pass ]
 
-webkit.org/b/97390 mathml/presentation/subsup.xhtml [ Failure Pass ]
-webkit.org/b/97390 mathml/presentation/msubsup-base-changed.xhtml [ ImageOnlyFailure Pass ]
-
 webkit.org/b/73409 fast/forms/textarea-placeholder-set-attribute.html [ ImageOnlyFailure Pass ]
 
 webkit.org/b/78819 fast/workers/shared-worker-load-error.html [ Timeout Pass ]

Modified: trunk/LayoutTests/platform/mac/TestExpectations (133220 => 133221)


--- trunk/LayoutTests/platform/mac/TestExpectations	2012-11-01 20:35:00 UTC (rev 133220)
+++ trunk/LayoutTests/platform/mac/TestExpectations	2012-11-01 20:42:29 UTC (rev 133221)
@@ -1304,14 +1304,16 @@
 webkit.org/b/80394 fast/block/margin-collapse/block-inside-inline/025.html [ Failure ]
 
 webkit.org/b/100463 mathml/msubsup-fuzz.html [ Crash Pass ]
-# Needs rebaselining after bug 99921
+# Needs rebaseline
 webkit.org/b/99921 mathml/presentation/fenced.xhtml [ Failure ]
 webkit.org/b/99921 mathml/presentation/mo.xhtml [ Failure ]
-webkit.org/b/99921 mathml/presentation/mo-stretch.html [ Failure ]
 webkit.org/b/99921 mathml/presentation/over.xhtml [ Failure ]
 webkit.org/b/99921 mathml/presentation/row.xhtml [ Failure ]
-webkit.org/b/99921 mathml/presentation/row-alignment.xhtml [ Failure ]
-webkit.org/b/99921 mathml/presentation/subsup.xhtml [ Failure ]
+# Needs rebaseline after bug 97390
+webkit.org/b/97390 mathml/presentation/mo-stretch.html [ Failure Pass ]
+webkit.org/b/97390 mathml/presentation/row-alignment.xhtml [ Failure Pass ]
+webkit.org/b/97390 mathml/presentation/tables.xhtml [ Failure Pass ]
+webkit.org/b/97390 mathml/presentation/subsup.xhtml [ Failure Pass ]
 
 # css3-conditionals support is not yet enabled.
 webkit.org/b/86146 css3/supports.html

Modified: trunk/Source/WebCore/ChangeLog (133220 => 133221)


--- trunk/Source/WebCore/ChangeLog	2012-11-01 20:35:00 UTC (rev 133220)
+++ trunk/Source/WebCore/ChangeLog	2012-11-01 20:42:29 UTC (rev 133221)
@@ -1,3 +1,22 @@
+2012-11-01  David Barton  <[email protected]>
+
+        REGRESSION (r128837): mathml/presentation/subsup.xhtml became flaky
+        https://bugs.webkit.org/show_bug.cgi?id=97390
+
+        Reviewed by Ojan Vafai.
+
+        In a RenderMathMLSubSup, we need to set the base's wrapper's style so that baseHeight
+        in layout() will be the base's true height, without any flexbox stretching.
+
+        Tested by existing tests.
+
+        * rendering/mathml/RenderMathMLSubSup.cpp:
+        (WebCore::RenderMathMLSubSup::fixAnonymousStyles):
+        (WebCore::RenderMathMLSubSup::addChild):
+        (WebCore::RenderMathMLSubSup::styleDidChange):
+        * rendering/mathml/RenderMathMLSubSup.h:
+        (RenderMathMLSubSup):
+
 2012-11-01  Antti Koivisto  <[email protected]>
 
         REGRESSION (r132941): attribute modification 10% performance regression

Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.cpp (133220 => 133221)


--- trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.cpp	2012-11-01 20:35:00 UTC (rev 133220)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.cpp	2012-11-01 20:42:29 UTC (rev 133221)
@@ -61,8 +61,12 @@
     return toRenderBoxModelObject(base);
 }
 
-void RenderMathMLSubSup::fixScriptsStyle()
+void RenderMathMLSubSup::fixAnonymousStyles()
 {
+    // Set the base wrapper's style so that baseHeight in layout() will be an unstretched height.
+    ASSERT(firstChild() && firstChild()->style()->refCount() == 1);
+    firstChild()->style()->setAlignSelf(AlignFlexStart);
+    
     ASSERT(m_scripts && m_scripts->style()->refCount() == 1);
     RenderStyle* scriptsStyle = m_scripts->style();
     scriptsStyle->setFlexDirection(FlowColumn);
@@ -80,7 +84,8 @@
         
         m_scripts = createAnonymousMathMLBlock();
         RenderMathMLBlock::addChild(m_scripts);
-        fixScriptsStyle();
+        
+        fixAnonymousStyles();
     }
     
     if (firstChild()->isEmpty())
@@ -93,8 +98,8 @@
 {
     RenderMathMLBlock::styleDidChange(diff, oldStyle);
     
-    if (m_scripts)
-        fixScriptsStyle();
+    if (!isEmpty())
+        fixAnonymousStyles();
 }
 
 RenderMathMLOperator* RenderMathMLSubSup::unembellishedOperator()

Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.h (133220 => 133221)


--- trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.h	2012-11-01 20:35:00 UTC (rev 133220)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLSubSup.h	2012-11-01 20:42:29 UTC (rev 133221)
@@ -44,7 +44,7 @@
     virtual void layout();
     
 private:
-    void fixScriptsStyle();
+    void fixAnonymousStyles();
     virtual void styleDidChange(StyleDifference, const RenderStyle* oldStyle) OVERRIDE;
 
     virtual const char* renderName() const { return "RenderMathMLSubSup"; }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to