module: fix loading from global folders on Windows
Code was calculating $PREFIX/lib/node relative to process.execPath, but on Windows process.execPath is $PREFIX\node.exe whereas everywhere else process.execPath is $PREFIX/bin/node (where $PREFIX is the root of the installed Node.js). PR-URL: https://github.com/nodejs/node/pull/9283 Reviewed-By: Sam Roberts <vieuxtech@gmail.com> Reviewed-By: Gibson Fahnestock <gibfahn@gmail.com> Reviewed-By: João Reis <reis@janeasystems.com> Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
This commit is contained in:
parent
92e7c93fce
commit
055482c21e
@ -632,7 +632,16 @@ Module._initPaths = function() {
|
|||||||
homeDir = process.env.HOME;
|
homeDir = process.env.HOME;
|
||||||
}
|
}
|
||||||
|
|
||||||
var paths = [path.resolve(process.execPath, '..', '..', 'lib', 'node')];
|
// $PREFIX/lib/node, where $PREFIX is the root of the Node.js installation.
|
||||||
|
var prefixDir;
|
||||||
|
// process.execPath is $PREFIX/bin/node except on Windows where it is
|
||||||
|
// $PREFIX\node.exe.
|
||||||
|
if (isWindows) {
|
||||||
|
prefixDir = path.resolve(process.execPath, '..');
|
||||||
|
} else {
|
||||||
|
prefixDir = path.resolve(process.execPath, '..', '..');
|
||||||
|
}
|
||||||
|
var paths = [path.resolve(prefixDir, 'lib', 'node')];
|
||||||
|
|
||||||
if (homeDir) {
|
if (homeDir) {
|
||||||
paths.unshift(path.resolve(homeDir, '.node_libraries'));
|
paths.unshift(path.resolve(homeDir, '.node_libraries'));
|
||||||
|
Loading…
x
Reference in New Issue
Block a user