<html>
    <head>
        <script type="text/javascript">
            if (window.testRunner)
                testRunner.dumpAsText();

            function test()
            {
                var a = document.getElementById('a');
                var b = document.getElementById('b');
                var r = document.getElementById('result');
                document.body.appendChild(b);
                document.body.removeChild(a);
                var l = b.elements.length;
                result.innerText = l == 0 ? 'PASS' : 'FAIL: ' + l;
            }
        </script>
    </head>
    <body onload="test()">
        <p>
            This tests for a regression against
            <i><a href="https://bugs.webkit.org/show_bug.cgi?id=5926">https://bugs.webkit.org/show_bug.cgi?id=5926</a>
            Assertion failure in HTMLGenericFormElementImpl::removedFromTree</i>.
        </p>
        <hr>
        <p>
            Test result: <span id="result">FAIL: didn't finish</span>
        </p>
        <form id="a">
            <table></form>
            <form id="b">
                <input type="submit" value="Log In">
            </form>
    </body>
</html>
