<head>
<script>
if (window.testRunner)
    testRunner.dumpAsText();

function f() {
    document.designMode="on";
    document.execCommand("SelectAll");
    document.execCommand("InsertImage",false);
    document.execCommand("InsertImage",false);
    document.execCommand("Indent");
    document.execCommand("insertunorderedlist",false);
    document.execCommand("InsertUnorderedList",false);
    document.execCommand("Bold");
    document.execCommand("InsertLineBreak");
    document.execCommand("insertunorderedlist");
    document.execCommand("insertimage",false);
    document.execCommand("insertparagraph",false);
    document.execCommand("insertunorderedlist");
    document.execCommand("InsertUnorderedList");
    document.execCommand("Outdent");
    document.write("<p>Test for bug <a href=\"https://bugs.webkit.org/show_bug.cgi?id=60778\">REGRESSION (83075): Crash in line break after outdent</p>");
    document.write("<p>This test PASSED!</p>");
}
 </script>
</head>
<body onload='f();'>
    <pre id="x">x</pre>
</body>
