<html>
<body>
This is a crash test when executing backColor on a node where all of its ancestors have transparent background color.  You should see PASS at the end.
<div id="test" contenteditable></div>
<script>

if (window.testRunner)
    window.testRunner.dumpAsText();

window.getSelection().setPosition(test, 0);
var color = document.queryCommandValue('backColor', false, null);

document.write('backColor: ' + color + '<br>');
document.write('PASS');
</script>
</html>
