<body>
Test for <a href="http://bugzilla.opendarwin.org/show_bug.cgi?id=8770">bug 8770</a>: 
XMLHttpRequest should strip CR/LF characters from the URL (not just XMLHttpRequest, really, and TAB is also stripped).

<script>
if (window.layoutTestController) {
    layoutTestController.dumpAsText();
    layoutTestController.waitUntilDone();
}

if (document.URL.indexOf('?') == -1) {

	window.location.href = "url-strip-cr-lf-tab\x09\x0a\x0d.html?a=b\x09\x0a\x0d#\x09\x0a\x0dc";

} else {

	if (document.URL.substring(document.URL.indexOf('?')+1, document.URL.length) == "a=b#c")
		document.write("<p>Success</p>");
	else
		document.write("<p>Failure</p>");
	
	if (window.layoutTestController)
		layoutTestController.notifyDone();
}
</script>
</body>
