gecko-dev/dom/workers/test/errorPropagation_iframe.html

56 lines
1.3 KiB
HTML

<!--
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
<!DOCTYPE HTML>
<html>
<meta charset="utf-8">
<body>
<script type="text/javascript">
var worker;
function start(workerCount, messageCallback) {
var seenWindowError;
window.onerror = function(message, filename, lineno) {
if (!seenWindowError) {
seenWindowError = true;
messageCallback({
type: "window",
data: { message: message, filename: filename, lineno: lineno }
});
return true;
}
};
worker = new Worker("errorPropagation_worker.js");
worker.onmessage = function(event) {
messageCallback(event.data);
};
var seenWorkerError;
worker.onerror = function(event) {
if (!seenWorkerError) {
seenWorkerError = true;
messageCallback({
type: "worker",
data: {
message: event.message,
filename: event.filename,
lineno: event.lineno
}
});
event.preventDefault();
}
};
worker.postMessage(workerCount);
}
function stop() {
worker.terminate();
}
</script>
</body>
</html>