WebWorkersでエラー表示

最近のブラウザだとワーカ内でエラーが起こった場合、コンソールに表示してくれるけど、
ちょっと古いブラウザだと表示も何もしてくれないとか…… というわけでエラーの表示を。
上の記事にちょっと手を加えたものを以下に。
環境:MacOS 10.7.2 64bit / Google Chrome 17.0.963.12 dev

--- index.html  2012-01-04 23:13:02.000000000 +0900
+++ diff.html 2012-01-04 23:07:26.000000000 +0900
@@ -16,17 +16,6 @@
           JSON.parse(event.data).join('<br>')
         );
       }, false);
-
-      // w.onerror = function(event) { ... };
-      w.addEventListener('error', function(event){
-        var messages = [
-          'filename: ' + event.filename,
-          'lineno: ' + event.lineno,
-          'message: ' + event.message
-        ];
-        document.write(messages.join('<br>'));
-      }, true);
-
       w.postMessage(MAX_SIN);
     }());
   </script>
--- worker.js	2012-01-04 23:11:435669325112 +0900
+++ diff.js	2012-01-04 23:12:20.909898919 +0900
@@ -2,6 +2,7 @@
   // event.data === MAX_SIN
   var i,
       result = [];
+  document;
   for (i = event.data; i >= 0; i -= 1) {
     result[i] = Math.sin(i);
   }

と編集して、http://localhost:8080/にアクセスすると

filename: http://localhost:8080/worker.js
lineno: 4
message: Uncaught ReferenceError: document is not defined

と表示される。ブラウザはほぼ最新なので、JavaScriptコンソールにも表示されてた。

var messages = [
  'filename: ' + event.filename,
  'lineno: ' + event.lineno,
  'message: ' + event.message
];
document.write(messages.join('<br>'));

でなくても

document.write([
  'filename: ' + event.filename,
  'lineno: ' + event.lineno,
  'message: ' + event.message
].join('<br>'));

でよかったかも。