Skip to content

Commit

Permalink
Fix regression introduced in fe804d9
Browse files Browse the repository at this point in the history
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.
  • Loading branch information
isaacs authored and ry committed Jan 6, 2011
1 parent b6dafc1 commit 48334dc
Showing 1 changed file with 9 additions and 4 deletions.
13 changes: 9 additions & 4 deletions src/node.js
Original file line number Diff line number Diff line change
Expand Up @@ -536,10 +536,15 @@

var cwd = process.cwd();
var path = requireNative('path');

// Make process.argv[0] and process.argv[1] into full paths.
if ('/\\'.indexOf(process.argv[0].charAt(0)) < 0
&& process.argv[0].charAt(1) != ':') {
var isWindows = process.platform === 'win32';

// 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]);
}

Expand Down

0 comments on commit 48334dc

Please sign in to comment.