From 76f37277d9bab10b58e27d938a2ece9060b64dee Mon Sep 17 00:00:00 2001 From: Kevin Sawicki Date: Tue, 3 Feb 2015 17:00:37 -0800 Subject: [PATCH] Use sibling .atom when non-standard installer location --- src/browser/main.coffee | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/browser/main.coffee b/src/browser/main.coffee index 55b895d6b..60c2a0ee6 100644 --- a/src/browser/main.coffee +++ b/src/browser/main.coffee @@ -14,6 +14,7 @@ process.on 'uncaughtException', (error={}) -> nslog(error.stack) if error.stack? start = -> + setupAtomHome() if process.platform is 'win32' SquirrelUpdate = require './squirrel-update' squirrelCommand = process.argv[1] @@ -76,6 +77,16 @@ setupCoffeeScript = -> setupAtomHome = -> return if process.env.ATOM_HOME + # Use install-relative .atom path on Windows when using the installer version + # in a non-default version. This enables an easy portable version. + if process.platform is 'win32' + SquirrelUpdate = require './squirrel-update' + if SquirrelUpdate.existsSync() + atomPath = path.join(process.env.LOCALAPPDATA, 'atom').toLowerCase() + if __dirname.toLowerCase().indexOf(atomPath) isnt 0 + process.env.ATOM_HOME = path.join(rootAtomFolder, '.atom') + return + if process.platform is 'win32' home = process.env.USERPROFILE else @@ -162,5 +173,4 @@ parseCommandLine = -> {resourcePath, pathsToOpen, executedFrom, test, version, pidToKillWhenClosed, devMode, safeMode, newWindow, specDirectory, logFile} -setupAtomHome() start()