diff --git a/src/main.js b/src/main.js index 60070c76804..43a92f8069a 100644 --- a/src/main.js +++ b/src/main.js @@ -222,13 +222,12 @@ var nodeCachedDataDir = getNodeCachedDataDir().then(function (value) { } }); -// Load our code once ready -app.once('ready', function () { - global.perfAppReady = Date.now(); - var nlsConfig = getNLSConfiguration(); - process.env['VSCODE_NLS_CONFIG'] = JSON.stringify(nlsConfig); +var nlsConfig = getNLSConfiguration(); +process.env['VSCODE_NLS_CONFIG'] = JSON.stringify(nlsConfig); - nodeCachedDataDir.then(function () { - require('./bootstrap-amd').bootstrap('vs/code/electron-main/main'); - }, console.error); +var bootstrap = require('./bootstrap-amd'); +nodeCachedDataDir.then(function () { + bootstrap.bootstrap('vs/code/electron-main/main'); +}, function (err) { + console.error(err); }); diff --git a/src/vs/code/electron-main/main.ts b/src/vs/code/electron-main/main.ts index e76e0685b51..8294cc1f22b 100644 --- a/src/vs/code/electron-main/main.ts +++ b/src/vs/code/electron-main/main.ts @@ -199,4 +199,16 @@ function main() { }).done(null, err => instantiationService.invokeFunction(quit, err)); } -main(); \ No newline at end of file +// Get going once we are ready +// TODO@Joh,Joao there more more potential here +// we should check for other instances etc while +// waiting for getting ready +if (app.isReady()) { + global.perfAppReady = Date.now(); + main(); +} else { + app.once('ready', () => { + global.perfAppReady = Date.now(); + main(); + }); +}