<html>
<body>
    <p>Text for <a href="https://bugs.webkit.org/show_bug.cgi?id=10147">bug 10147</a>:
    REGRESSION: custom attribute values set via javascript are not persistent.</p>

    <table id="table1" border="0">
        <tr id="mg" customAttr="old Value">
        </tr>
    </table>

    <script language="javascript">
        if (window.testRunner)
            testRunner.dumpAsText();

        try {
            document.getElementById("mg").setAttribute("customAttr", "new value");
    
            if ("new value" == document.getElementById("mg").getAttribute("customAttr"))
                document.write("SUCCESS");
            else
                document.write("FAILURE");

        } catch (ex) {
            document.write(ex);
        }

    </script>
</body>
</html>
