<html>
<head>
<title> Test case bug 13942 </title>
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
}
</script>
</head>
<body>
<p> Test case for <a href="https://bugs.webkit.org/show_bug.cgi?id=13942"> Bug 13942 </a>: ASSERTION FAILED: !attrName.contains('/') in HTMLTokenizer.cpp:132 when loading http://bamanzi.blogeden.cn/ </p>
<p> To pass this test, there should be no assertion failure and you should PASS three times. </p>
<href ='http://webkit.org' id='test'> PASS </href>
<script type='text/javascript'>
// Check that we have recovered from the error
// and taken 'id' into account.
var test = document.getElementById('test');
if (test) {
    test.appendChild(document.createElement('br'));
    test.appendChild(document.createTextNode('PASS'));
} else {
    document.body.appendChild(document.createElement('br'));
    document.body.appendChild(document.createTextNode('FAILED'));
}
</script>
<br/>
<a ='http://webkit.org>PASS</a>
</body>
</html>
