Skip to content
This repository has been archived by the owner. It is now read-only.
Permalink
Browse files

child_process: make copy of options arg

Make a copy of the options object that the user passes in, we modify it.
  • Loading branch information...
bnoordhuis committed May 10, 2012
1 parent 928d28a commit 68f63fe9ec2b8a7308cefa4a1ae1261cd6d1675f
Showing with 4 additions and 7 deletions.
  1. +4 −7 lib/child_process.js
@@ -172,10 +172,10 @@ exports.fork = function(modulePath /*, args, options*/) {
var options, args, execArgv;
if (Array.isArray(arguments[1])) {
args = arguments[1];
options = arguments[2] || {};
options = util._extend({}, arguments[2]);
} else {
args = [];
options = arguments[1] || {};
options = util._extend({}, arguments[1]);
}

// Prepare arguments for fork:
@@ -264,15 +264,12 @@ exports.execFile = function(file /* args, options, callback */) {

if (Array.isArray(arguments[1])) {
args = arguments[1];
if (typeof arguments[2] === 'object') optionArg = arguments[2];
options = util._extend(options, arguments[2]);
} else {
args = [];
if (typeof arguments[1] === 'object') optionArg = arguments[1];
options = util._extend(options, arguments[1]);
}

// Merge optionArg into options
util._extend(options, optionArg);

var child = spawn(file, args, {
cwd: options.cwd,
env: options.env,

0 comments on commit 68f63fe

Please sign in to comment.
You can’t perform that action at this time.