<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink">
  <title>Testing that dynamic changes to the element for a given ID are reflected in textPath</title>
  <!-- From https://bugzilla.mozilla.org/show_bug.cgi?id=458010 -->
  <defs>
	  <path id="x" d="M 75.5 100 h 251"/>
  </defs>
	
  <text>
	  <textPath xlink:href="#m1" font-size="20" fill="black">Should see this</textPath>
  </text>

  <script>
  
  function doTest() {
    // check that changing an id to "m1" lets l1 find it
    var x = document.getElementById("x");
    x.setAttribute("id", "m1");

    document.documentElement.removeAttribute("class");
    if (window.testRunner)
      testRunner.notifyDone();
    }
    
  if (window.testRunner)
    testRunner.waitUntilDone();
    
  setTimeout(doTest, 100);

  </script>
</svg>
