<p>
    Test for <a href="https://bugs.webkit.org/show_bug.cgi?id=38445">https://bugs.webkit.org/show_bug.cgi?id=38445</a>
    another case of <i><a href="rdar://problem/7552959">rdar://problem/7552959</a>
    REGRESSION: Infinite recursion in Position::getInlineBoxAndOffset()</i>.
</p>
<div id="target" style="text-align: center; -webkit-user-modify: read-write"><span style="-webkit-user-modify: read-only"></span>editable<span style="-webkit-user-modify: read-only"></span></div>
<script>
    if (window.testRunner)
        testRunner.dumpAsText();

    var selection = getSelection();
    var target = document.getElementById("target");
    selection.setBaseAndExtent(target, 3, target, 3);
    selection.setBaseAndExtent(target, 0, target, 0);
</script>
