From 500d15f53adc1979674160bd090525e9f0c0710e Mon Sep 17 00:00:00 2001 From: Cheng Zhao Date: Thu, 23 Apr 2015 13:17:18 +0800 Subject: [PATCH] Also remove user-defined search paths in renderer --- atom/browser/lib/init.coffee | 18 +++--------------- atom/common/lib/init.coffee | 14 +++++++++++++- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/atom/browser/lib/init.coffee b/atom/browser/lib/init.coffee index fec5a64ac07e..fcff0d890331 100644 --- a/atom/browser/lib/init.coffee +++ b/atom/browser/lib/init.coffee @@ -1,27 +1,15 @@ fs = require 'fs' path = require 'path' -module = require 'module' util = require 'util' +Module = require 'module' # We modified the original process.argv to let node.js load the atom.js, # we need to restore it here. process.argv.splice 1, 1 -# Global module search paths. -globalPaths = module.globalPaths - -# Don't lookup modules in user-defined search paths, see http://git.io/vf8sF. -homeDir = - if process.platform is 'win32' - process.env.USERPROFILE - else - process.env.HOME -if homeDir # Node only add user-defined search paths when $HOME is defined. - userModulePath = path.resolve homeDir, '.node_modules' - globalPaths.splice globalPaths.indexOf(userModulePath), 2 - # Add browser/api/lib to module search paths, which contains javascript part of # Electron's built-in libraries. +globalPaths = Module.globalPaths globalPaths.push path.resolve(__dirname, '..', 'api', 'lib') # Import common settings. @@ -101,4 +89,4 @@ app.setPath 'userCache', path.join(app.getPath('cache'), app.getName()) require './chrome-extension' # Finally load app's main.js and transfer control to C++. -module._load path.join(packagePath, packageJson.main), module, true +Module._load path.join(packagePath, packageJson.main), Module, true diff --git a/atom/common/lib/init.coffee b/atom/common/lib/init.coffee index 4fd1f8289d55..88b32d8c0254 100644 --- a/atom/common/lib/init.coffee +++ b/atom/common/lib/init.coffee @@ -10,8 +10,20 @@ process.atomBinding = (name) -> catch e process.binding "atom_common_#{name}" if /No such module/.test e.message -# Add common/api/lib to module search paths. +# Global module search paths. globalPaths = Module.globalPaths + +# Don't lookup modules in user-defined search paths, see http://git.io/vf8sF. +homeDir = + if process.platform is 'win32' + process.env.USERPROFILE + else + process.env.HOME +if homeDir # Node only add user-defined search paths when $HOME is defined. + userModulePath = path.resolve homeDir, '.node_modules' + globalPaths.splice globalPaths.indexOf(userModulePath), 2 + +# Add common/api/lib to module search paths. globalPaths.push path.resolve(__dirname, '..', 'api', 'lib') # setImmediate and process.nextTick makes use of uv_check and uv_prepare to