diff options
Diffstat (limited to 'accessible/tests/crashtests/448064.xhtml')
-rw-r--r-- | accessible/tests/crashtests/448064.xhtml | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/accessible/tests/crashtests/448064.xhtml b/accessible/tests/crashtests/448064.xhtml new file mode 100644 index 0000000000..c1a25ca550 --- /dev/null +++ b/accessible/tests/crashtests/448064.xhtml @@ -0,0 +1,70 @@ +<html xmlns="http://www.w3.org/1999/xhtml"> +<head> +</head> +<body> +<div id="mw_b"> +<div id="mw_f"> +<div id="mw_g" style="display: none;"/> +</div> +</div> + +<div id="mw_c" style="display: none;"> +<div id="mw_d"> +<div id="mw_e"></div> +</div> +</div> + +<input id="mw_a"/> + + +<script> +function dumpAccessibleNode(aNode, level) { + var msg = ""; + + try { + msg += "name=\"" + aNode.name + "\" "; + } catch (e) { + msg += " noName "; + } + + dump(msg + "\n"); +} + + +function dumpAccessibleTree(aNode, level) { + level = level || 0; + + dumpAccessibleNode(aNode, level); + try { + var child = aNode.firstChild; + while (child) { + dumpAccessibleTree(child, level + 1); + child = child.nextSibling; + } + } catch (e) { + dump("Error visiting child nodes: " + e + "\n"); + } +} + +function A(o) { + var acc = SpecialPowers.Cc["@mozilla.org/accessibilityService;1"] + .getService(SpecialPowers.Ci.nsIAccessibilityService); + return acc.getAccessibleFor(o); +} + +function beginAccessible() { + dumpAccessibleTree(A(document), 0); +} +setTimeout(beginAccessible, 100); + + +setTimeout(doe, 200); +function doe() { + document.getElementById("mw_a").appendChild(document.getElementById("mw_b")); + document.getElementById("mw_c").appendChild(document.getElementById("mw_d")); + document.getElementById("mw_e").appendChild(document.getElementById("mw_f")); + document.getElementById("mw_g").appendChild(document.getElementById("mw_b")); +} +</script> +</body> +</html> |