Title: [108097] trunk
Revision
108097
Author
[email protected]
Date
2012-02-17 11:00:54 -0800 (Fri, 17 Feb 2012)

Log Message

ASSERT (and crash) with dynamically moved <font-face>
https://bugs.webkit.org/show_bug.cgi?id=64839

Reviewed by Antti Koivisto.

Source/WebCore:

Reset the style declaration when rmeoving the font-face element from the document.

Test: svg/custom/font-face-move.svg

* svg/SVGFontFaceElement.cpp:
(WebCore::SVGFontFaceElement::removedFromDocument):

LayoutTests:

* svg/custom/font-face-move-expected.txt: Added.
* svg/custom/font-face-move.svg: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (108096 => 108097)


--- trunk/LayoutTests/ChangeLog	2012-02-17 18:55:43 UTC (rev 108096)
+++ trunk/LayoutTests/ChangeLog	2012-02-17 19:00:54 UTC (rev 108097)
@@ -1,3 +1,13 @@
+2012-02-17  Rob Buis  <[email protected]>
+
+        ASSERT (and crash) with dynamically moved <font-face>
+        https://bugs.webkit.org/show_bug.cgi?id=64839
+
+        Reviewed by Antti Koivisto.
+
+        * svg/custom/font-face-move-expected.txt: Added.
+        * svg/custom/font-face-move.svg: Added.
+
 2012-02-17  Julien Chaffraix  <[email protected]>
 
         Unreviewed Chromium rebaseline after r107971.

Added: trunk/LayoutTests/svg/custom/font-face-move-expected.txt (0 => 108097)


--- trunk/LayoutTests/svg/custom/font-face-move-expected.txt	                        (rev 0)
+++ trunk/LayoutTests/svg/custom/font-face-move-expected.txt	2012-02-17 19:00:54 UTC (rev 108097)
@@ -0,0 +1 @@
+PASS

Added: trunk/LayoutTests/svg/custom/font-face-move.svg (0 => 108097)


--- trunk/LayoutTests/svg/custom/font-face-move.svg	                        (rev 0)
+++ trunk/LayoutTests/svg/custom/font-face-move.svg	2012-02-17 19:00:54 UTC (rev 108097)
@@ -0,0 +1,15 @@
+<svg xmlns="http://www.w3.org/2000/svg">
+    <defs id="defs">
+        <font id="a">
+            <font-face id="bfont" font-family="b" />
+        </font>
+    </defs>
+    <text font-family="b">PASS</text>
+    <script>
+    if (window.layoutTestController)
+        layoutTestController.dumpAsText();
+    var defs = document.getElementById("defs");
+    var bfont = document.getElementById("bfont");
+    defs.appendChild(bfont);
+    </script>
+</svg>

Modified: trunk/Source/WebCore/ChangeLog (108096 => 108097)


--- trunk/Source/WebCore/ChangeLog	2012-02-17 18:55:43 UTC (rev 108096)
+++ trunk/Source/WebCore/ChangeLog	2012-02-17 19:00:54 UTC (rev 108097)
@@ -1,3 +1,17 @@
+2012-02-17  Rob Buis  <[email protected]>
+
+        ASSERT (and crash) with dynamically moved <font-face>
+        https://bugs.webkit.org/show_bug.cgi?id=64839
+
+        Reviewed by Antti Koivisto.
+
+        Reset the style declaration when rmeoving the font-face element from the document.
+
+        Test: svg/custom/font-face-move.svg
+
+        * svg/SVGFontFaceElement.cpp:
+        (WebCore::SVGFontFaceElement::removedFromDocument):
+
 2012-02-17  Martin Robinson  <[email protected]>
 
         Fix some warnings encountered during the GTK+ build

Modified: trunk/Source/WebCore/svg/SVGFontFaceElement.cpp (108096 => 108097)


--- trunk/Source/WebCore/svg/SVGFontFaceElement.cpp	2012-02-17 18:55:43 UTC (rev 108096)
+++ trunk/Source/WebCore/svg/SVGFontFaceElement.cpp	2012-02-17 19:00:54 UTC (rev 108097)
@@ -329,6 +329,7 @@
 {
     removeFromMappedElementSheet();
     SVGElement::removedFromDocument();
+    m_fontFaceRule->declaration()->parseDeclaration(emptyString());
 }
 
 void SVGFontFaceElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta)
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to