mirror of
https://github.com/nodejs/node-v0.x-archive.git
synced 2026-04-28 03:01:10 -04:00
Fix regression introduced in fe804d9b
It breaks argv[0] on posix systems, and makes it so that npm can't determine whether node was run from an explicit location, or via "node", so the configs default improperly. If on windows, don't do this behavior. On posix, go back to the old behavior.
This commit is contained in:
11
src/node.js
11
src/node.js
@@ -536,10 +536,15 @@
|
||||
|
||||
var cwd = process.cwd();
|
||||
var path = requireNative('path');
|
||||
var isWindows = process.platform === 'win32';
|
||||
|
||||
// Make process.argv[0] and process.argv[1] into full paths.
|
||||
if ('/\\'.indexOf(process.argv[0].charAt(0)) < 0
|
||||
&& process.argv[0].charAt(1) != ':') {
|
||||
// Make process.argv[0] and process.argv[1] into full paths, but only
|
||||
// touch argv[0] if it's not a system $PATH lookup.
|
||||
// TODO: Make this work on Windows as well. Note that "node" might
|
||||
// execute cwd\node.exe, or some %PATH%\node.exe on Windows,
|
||||
// and that every directory has its own cwd, so d:node.exe is valid.
|
||||
var argv0 = process.argv[0];
|
||||
if (!isWindows && argv0.indexOf('/') !== -1 && argv0.charAt(0) !== '/') {
|
||||
process.argv[0] = path.join(cwd, process.argv[0]);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user