Source code

Revision control

Copy as Markdown

Other Tools

function generateError()
{
// Generate an exception by accessing an undefined variable.
foo.bar = 0;
}
onconnect = function(event) {
event.ports[0].onmessage = function(evt) { handleMessage(evt, event.ports[0]); };
};
function handleMessage(event, port) {
self.port = port;
if (event.data == "ping")
port.postMessage("PASS: Received ping message");
else if (event.data == "close")
close();
else if (event.data == "done")
port.postMessage("DONE");
else if (event.data == "throw")
generateError();
else if (event.data == "testingNameAttribute")
port.postMessage(self.name);
else if (/eval.+/.test(event.data)) {
try {
port.postMessage(event.data.substr(5) + ": " + eval(event.data.substr(5)));
} catch (ex) {
port.postMessage(event.data.substr(5) + ": " + ex);
}
}
else
port.postMessage("FAILURE: Received unknown message: " + event.data);
}