diff --git a/src/vs/base/worker/workerMain.ts b/src/vs/base/worker/workerMain.ts index 717ca10fdf7..461c9a52374 100644 --- a/src/vs/base/worker/workerMain.ts +++ b/src/vs/base/worker/workerMain.ts @@ -18,14 +18,16 @@ let loadCode = function(moduleId) { require([moduleId], function(ws) { - let messageHandler = ws.create((msg:any) => { - (self).postMessage(msg); - }, null); + setTimeout(function() { + let messageHandler = ws.create((msg:any) => { + (self).postMessage(msg); + }, null); - self.onmessage = (e) => messageHandler.onmessage(e.data); - while(beforeReadyMessages.length > 0) { - self.onmessage(beforeReadyMessages.shift()); - } + self.onmessage = (e) => messageHandler.onmessage(e.data); + while(beforeReadyMessages.length > 0) { + self.onmessage(beforeReadyMessages.shift()); + } + }, 0); }); };