<head>
<script>
function runTest() {
    document.body.focus();
    document.execCommand("InsertText", false, "This tests for a crash when making and removing lists from underlined content.");
    document.execCommand("InsertParagraph");
    document.execCommand("InsertText", false, "All three paragraphs should be in list items.");
    document.execCommand("InsertParagraph");
    document.execCommand("InsertText", false, "And all three should be underlined.");
    document.execCommand("SelectAll");
    document.execCommand("Underline");
    document.execCommand("InsertOrderedList");
    document.execCommand("InsertOrderedList");
    document.execCommand("InsertOrderedList");
}
</script>
</head>

<body contenteditable="true" onload="runTest();"></body>
