<html>
<body>
<p>Test that when window.onerror handler is called, window.event is the corresponding ErrorEvent object. <a href="https://bugs.webkit.org/show_bug.cgi?id=8519">Bug 8519</a>.</p>
<div id="console"></div>
<script>
if (window.testRunner) {
    testRunner.dumpAsText();
    testRunner.waitUntilDone();
}

function log(msg) {
    document.getElementById("console").innerHTML += msg + "<br>";
}

function lastPathComponent(url) {
    return url ? url.match( /[^\/]+\/?$/ )[0] : url;
}

window.onerror = function(msg, url, line, column, error)
{
    log("Main frame window.onerror: " + msg + " at " + lastPathComponent(url) + ", line: " + line + ", column: " + column + ", error: " + error);
    log("window.event.type = " + window.event.type);
    log("window.event.message = " + window.event.message);
    log("window.event.filename = " + lastPathComponent(window.event.filename));
    log("window.event.lineno = " + window.event.lineno);
    log("window.event.colno = " + window.event.colno);
    if (window.testRunner)
        testRunner.notifyDone();
    return true;
}

throw new Error(2010);

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