blob: 2881baf6d1a22f3cdba786f19e9f2292fa6ddc3f [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<script>
if (window.testRunner) {
testRunner.dumpAsText();
testRunner.waitUntilDone();
}
</script>
<style>
.class1 { -webkit-mask-box-image-source: url(#nonexistentURL); }
</style>
<script>
function freememory() {
var a;
for(var i=0;i<100;i++) {
a = new Uint8Array(1024*1024);
}
document.implementation.createHTMLDocument("doc");
}
function createTestRange() {
var testRange = document.createRange();
testRange.setEndAfter(testSelectOption);
testRange.deleteContents();
}
function eventhandler1() {
var testDataList = document.createElement("datalist");
testSelect.appendChild(testObjectParam);
document.title = "foo";
testDataList.addEventListener("DOMNodeInsertedIntoDocument", createTestRange);
testObject.appendChild(testDataList);
freememory();
}
function eventhandler2() {
testObject.setAttribute("onbeforeload", "eventhandler1()");
testSelect.addEventListener("DOMNodeRemovedFromDocument", eventhandler1);
testSelect.replaceWith("This test passes if there is no exception.");
}
function runTest() {
var testSource = document.createElement("source");
testSource.addEventListener("DOMSubtreeModified", eventhandler2);
testSource.setAttribute("onsubmit", "");
if (window.testRunner)
testRunner.notifyDone();
}
</script>
</head>
<body onload=runTest()>
<li class="class1">Test List</li>
<object id="testObject">
<param id="testObjectParam"></param>
</object>
<select id="testSelect">
<option id="testSelectOption">Test Option</option>
</select>
</body>
</html>