OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <html xmlns="http://www.w3.org/1999/xhtml"> | 2 <html xmlns="http://www.w3.org/1999/xhtml"> |
3 <body> | 3 <body> |
4 Test passes if it does not crash. | 4 Test passes if it does not crash. |
5 <object id="object" type="image/svg+xml" /> | 5 <object id="object" type="image/svg+xml" /> |
6 <script src="../../../resources/js-test.js"></script> | 6 <script src="../../../resources/js-test.js"></script> |
7 <script> | 7 <script> |
8 window.jsTestIsAsync = true; | 8 window.jsTestIsAsync = true; |
9 var count = 0; | 9 var count = 0; |
10 function setText() { | 10 function setText() { |
11 count++; | 11 count++; |
12 if (count > 100) { | 12 if (count > 100) { |
13 document.removeEventListener("beforeload", setText, true); | 13 document.removeEventListener("beforeload", setText, true); |
14 finishJSTest(); | 14 finishJSTest(); |
15 } | 15 } |
16 gc(); // Because we are recursively entering into setText, can't gc() after
this command. | 16 gc(); // Because we are recursively entering into setText, can't gc() after
this command. |
17 document.getElementById("object").textContent = "A"; | 17 // textContent will ignore setting identical text, so use count. |
| 18 document.getElementById("object").textContent = count; |
18 } | 19 } |
19 document.execCommand("SelectAll"); | 20 document.execCommand("SelectAll"); |
20 document.getElementById("object").textContent = "A"; | 21 document.getElementById("object").textContent = "A"; |
21 document.addEventListener("beforeload", setText, true); | 22 document.addEventListener("beforeload", setText, true); |
22 event = document.createEvent("Event"); | 23 event = document.createEvent("Event"); |
23 event.initEvent("beforeload", false); | 24 event.initEvent("beforeload", false); |
24 document.documentElement.dispatchEvent(event); | 25 document.documentElement.dispatchEvent(event); |
25 </script> | 26 </script> |
26 </body> | 27 </body> |
27 </html> | 28 </html> |
28 | 29 |
OLD | NEW |