<html>
    <head>
        <script>
            function test() {
                if (window.testRunner)
                    testRunner.waitUntilDone();
                setTimeout("test2()", 100);
            }
            function test2() {
                document.getElementById('sl').options[0] = new Option ( "This text should fit in the list box", "1" );
                if (window.testRunner)
                    testRunner.notifyDone();
            }
        </script>
    </head>
    <body onload="test()">
        This tests that when a list box's options get updated, the list box will recalculate its width, and relayout.
        <br>
        <select id="sl" multiple></select>
    </body>
</html>
