Title: [132365] trunk
Revision
132365
Author
[email protected]
Date
2012-10-24 10:20:41 -0700 (Wed, 24 Oct 2012)

Log Message

[MathML] Timeouts on linux after r132264
https://bugs.webkit.org/show_bug.cgi?id=100202

Reviewed by Eric Seidel.

Source/WebCore:

When building a stretched operator, such as a large parenthesis or bracket, we need to
check that the extension glyph's height is > 0, to avoid an infinite loop. The 0 height
can occur if the glyph is missing on the host system.

Tested by existing tests.

* rendering/mathml/RenderMathMLOperator.cpp:
(WebCore::RenderMathMLOperator::updateFromElement):

LayoutTests:

The failing tests no longer timeout.

* platform/chromium/TestExpectations:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (132364 => 132365)


--- trunk/LayoutTests/ChangeLog	2012-10-24 17:02:11 UTC (rev 132364)
+++ trunk/LayoutTests/ChangeLog	2012-10-24 17:20:41 UTC (rev 132365)
@@ -1,3 +1,14 @@
+2012-10-24  David Barton  <[email protected]>
+
+        [MathML] Timeouts on linux after r132264
+        https://bugs.webkit.org/show_bug.cgi?id=100202
+
+        Reviewed by Eric Seidel.
+
+        The failing tests no longer timeout.
+
+        * platform/chromium/TestExpectations:
+
 2012-10-24  Alexander Shalamov  <[email protected]>
 
         CSS3 Media Queries - add resolution tests to W3C test suite

Modified: trunk/LayoutTests/platform/chromium/TestExpectations (132364 => 132365)


--- trunk/LayoutTests/platform/chromium/TestExpectations	2012-10-24 17:02:11 UTC (rev 132364)
+++ trunk/LayoutTests/platform/chromium/TestExpectations	2012-10-24 17:20:41 UTC (rev 132365)
@@ -1983,8 +1983,10 @@
 # crbug.com/22554 mathml
 # 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 Timeout ]
-webkit.org/b/100202 [ Linux ] mathml/operator-hijacks-fenced-node.xhtml [ Pass Timeout ]
+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.
+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/Source/WebCore/ChangeLog (132364 => 132365)


--- trunk/Source/WebCore/ChangeLog	2012-10-24 17:02:11 UTC (rev 132364)
+++ trunk/Source/WebCore/ChangeLog	2012-10-24 17:20:41 UTC (rev 132365)
@@ -1,3 +1,19 @@
+2012-10-24  David Barton  <[email protected]>
+
+        [MathML] Timeouts on linux after r132264
+        https://bugs.webkit.org/show_bug.cgi?id=100202
+
+        Reviewed by Eric Seidel.
+
+        When building a stretched operator, such as a large parenthesis or bracket, we need to
+        check that the extension glyph's height is > 0, to avoid an infinite loop. The 0 height
+        can occur if the glyph is missing on the host system.
+
+        Tested by existing tests.
+
+        * rendering/mathml/RenderMathMLOperator.cpp:
+        (WebCore::RenderMathMLOperator::updateFromElement):
+
 2012-10-24  Parth Patel  <[email protected]>
 
         [BlackBerry] Extending existing ThreadUnsafe singletons in webkit to

Modified: trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp (132364 => 132365)


--- trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp	2012-10-24 17:02:11 UTC (rev 132364)
+++ trunk/Source/WebCore/rendering/mathml/RenderMathMLOperator.cpp	2012-10-24 17:20:41 UTC (rev 132365)
@@ -190,7 +190,7 @@
         bottomGlyphHeight = glyphHeightForCharacter(partsData->bottomGlyph);
         if (partsData->middleGlyph)
             middleGlyphHeight = glyphHeightForCharacter(partsData->middleGlyph) - 1;
-        shouldStack = m_stretchHeight >= topGlyphHeight + middleGlyphHeight + bottomGlyphHeight;
+        shouldStack = m_stretchHeight >= topGlyphHeight + middleGlyphHeight + bottomGlyphHeight && extensionGlyphHeight > 0;
     }
     
     // Either stretch is disabled or we don't have a stretchable character over the minimum height
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to