Title: [118294] branches/chromium/1132
Revision
118294
Author
[email protected]
Date
2012-05-23 18:12:26 -0700 (Wed, 23 May 2012)

Log Message

Merge 116860
BUG=127368
Review URL: https://chromiumcodereview.appspot.com/10450007

Modified Paths

Added Paths

Diff

Copied: branches/chromium/1132/LayoutTests/svg/animations/dynamic-modify-attributename-crash-expected.txt (from rev 116860, trunk/LayoutTests/svg/animations/dynamic-modify-attributename-crash-expected.txt) (0 => 118294)


--- branches/chromium/1132/LayoutTests/svg/animations/dynamic-modify-attributename-crash-expected.txt	                        (rev 0)
+++ branches/chromium/1132/LayoutTests/svg/animations/dynamic-modify-attributename-crash-expected.txt	2012-05-24 01:12:26 UTC (rev 118294)
@@ -0,0 +1 @@
+PASS

Copied: branches/chromium/1132/LayoutTests/svg/animations/dynamic-modify-attributename-crash.svg (from rev 116860, trunk/LayoutTests/svg/animations/dynamic-modify-attributename-crash.svg) (0 => 118294)


--- branches/chromium/1132/LayoutTests/svg/animations/dynamic-modify-attributename-crash.svg	                        (rev 0)
+++ branches/chromium/1132/LayoutTests/svg/animations/dynamic-modify-attributename-crash.svg	2012-05-24 01:12:26 UTC (rev 118294)
@@ -0,0 +1,24 @@
+<svg xmlns="http://www.w3.org/2000/svg">
+  <!-- Test for WK86100 - passes if there is no crash -->
+  <animate id="animate" attributeName="x" dur="9s"/>
+  <text id="log"/>
+  <script>
+  <![CDATA[
+    if (window.layoutTestController) {
+      layoutTestController.waitUntilDone();
+      layoutTestController.dumpAsText();
+    }
+
+    window.setTimeout(function() {
+      var elem = document.getElementById("animate");
+      elem.setAttribute("attributeName", "transform");
+    }, 10);
+
+    window.setTimeout(function() {
+      document.getElementById("log").appendChild(document.createTextNode("PASS"));
+      if (window.layoutTestController)
+        layoutTestController.notifyDone();
+    }, 100);
+  ]]>
+  </script>
+</svg>

Modified: branches/chromium/1132/Source/WebCore/svg/animation/SVGSMILElement.cpp (118293 => 118294)


--- branches/chromium/1132/Source/WebCore/svg/animation/SVGSMILElement.cpp	2012-05-24 01:09:22 UTC (rev 118293)
+++ branches/chromium/1132/Source/WebCore/svg/animation/SVGSMILElement.cpp	2012-05-24 01:12:26 UTC (rev 118294)
@@ -462,9 +462,13 @@
             beginListChanged(elapsed());
         else if (attrName == SVGNames::endAttr)
             endListChanged(elapsed());
-        else if (attrName == SVGNames::attributeNameAttr)
+        else if (attrName == SVGNames::attributeNameAttr) {
             m_attributeName = constructQualifiedName(this, fastGetAttribute(SVGNames::attributeNameAttr));
-        else if (attrName.matches(XLinkNames::hrefAttr)) {
+            if (m_targetElement) {
+                resetTargetElement();
+                return;
+            }
+        } else if (attrName.matches(XLinkNames::hrefAttr)) {
             if (SVGElement* targetElement = this->targetElement())
                 document()->accessSVGExtensions()->removeAllAnimationElementsFromTarget(targetElement);
         }
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to