dom/workers/test/errorwarning_worker.js

branch
TOR_BUG_9701
changeset 15
b8a032363ba2
equal deleted inserted replaced
-1:000000000000 0:562337e14b8f
1 /**
2 * Any copyright is dedicated to the Public Domain.
3 * http://creativecommons.org/publicdomain/zero/1.0/
4 */
5
6 function errorHandler() {
7 postMessage({ type: 'error' });
8 }
9
10 onmessage = function(event) {
11 if (event.data.errors) {
12 try {
13 // This is an error:
14 postMessage({ type: 'ignore', value: b.aaa });
15 } catch(e) {
16 errorHandler();
17 }
18 } else {
19 var a = {};
20 // This is a warning:
21 postMessage({ type: 'ignore', value: a.foo });
22 }
23
24 if (event.data.loop != 0) {
25 var worker = new Worker('errorwarning_worker.js');
26 worker.onerror = errorHandler;
27 worker.postMessage({ loop: event.data.loop - 1, errors: event.data.errors });
28
29 worker.onmessage = function(e) {
30 postMessage(e.data);
31 }
32
33 } else {
34 postMessage({ type: 'finish' });
35 }
36 }
37
38 onerror = errorHandler;
39 onerror = onerror;
40 if (!onerror || onerror != onerror) {
41 throw "onerror wasn't set properly";
42 }

mercurial