Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
1 /**
2 * Any copyright is dedicated to the Public Domain.
3 * http://creativecommons.org/publicdomain/zero/1.0/
4 */
5 var seenScopeError;
6 onerror = function(message, filename, lineno) {
7 if (!seenScopeError) {
8 seenScopeError = true;
9 postMessage({
10 type: "scope",
11 data: { message: message, filename: filename, lineno: lineno }
12 });
13 return true;
14 }
15 };
17 onmessage = function(event) {
18 var workerId = parseInt(event.data);
20 if (workerId > 1) {
21 var worker = new Worker("errorPropagation_worker.js");
23 worker.onmessage = function(event) {
24 postMessage(event.data);
25 };
27 var seenWorkerError;
28 worker.onerror = function(event) {
29 if (!seenWorkerError) {
30 seenWorkerError = true;
31 postMessage({
32 type: "worker",
33 data: {
34 message: event.message,
35 filename: event.filename,
36 lineno: event.lineno
37 }
38 });
39 event.preventDefault();
40 }
41 };
43 worker.postMessage(workerId - 1);
44 return;
45 }
47 var interval = setInterval(function() {
48 throw new Error("expectedError");
49 }, 100);
50 };