<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>content diff test</title>
<style type="text/css" media="screen">
.initial > div:before {
    content: 'FAIL';
}
.final > div:before {
    content: 'PASS';
}
</style>
<script type="text/javascript" charset="utf-8">
function runTest()
{
    if (window.testRunner) {
        testRunner.queueReload();
    }
}
</script>
</head>
<body onload="runTest()">
<div id="container" class="initial">
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</div>
<div>
    <p><a href="https://bugs.webkit.org/show_bug.cgi?id=23741">Bug 23741: StyleRareNonInheritedData::operator==() should not compare ContentData objects by pointer</a></p>
    <ol>
        <li>All lines above should be "PASS" on initial page load.</li>
        <li>Reload the page once.</li>
        <li>All lines above should still be "PASS".</li>
    </ol>
</div>
<script type="text/javascript" charset="utf-8">
    document.getElementById('container').className = 'final';
</script>
</body>
</html>
