diff --git a/src/browser/main.coffee b/src/browser/main.coffee index 573e42f27..7bd7f9fce 100644 --- a/src/browser/main.coffee +++ b/src/browser/main.coffee @@ -8,13 +8,13 @@ yargs = require 'yargs' console.log = require 'nslog' start = -> + args = parseCommandLine() + setupUncaughtExceptionHandler() - setupAtomHome() + setupAtomHome(args) setupCompileCache() return if handleStartupEventWithSquirrel() - args = parseCommandLine() - addPathToOpen = (event, pathToOpen) -> event.preventDefault() args.pathsToOpen.push(pathToOpen) @@ -56,21 +56,23 @@ handleStartupEventWithSquirrel = -> setupCrashReporter = -> crashReporter.start(productName: 'Atom', companyName: 'GitHub') -isPortableInstall = -> +isPortableInstall = (args) -> return false unless process.platform is 'win32' return false unless (process and process.type) + return false if args.devMode or args.testMode ourPath = process.execPath.toLowerCase() return (ourPath.indexOf(process.env.LOCALAPPDATA.toLowerCase()) is 0) -setupAtomHome = -> +setupAtomHome = (args) -> return if process.env.ATOM_HOME + atomHome = path.join(app.getHomeDir(), '.atom') try atomHome = fs.realpathSync(atomHome) fs.statSync(atomHome) catch - atomHome = path.join(path.dirname(process.execPath), '.atom') if isPortableInstall() + atomHome = path.join(path.dirname(process.execPath), '.atom') if isPortableInstall(args) process.env.ATOM_HOME = atomHome