Skip to content

Commit

Permalink
Merge pull request #1 from saary/master
Browse files Browse the repository at this point in the history
Do not close stdout/stderr when piping them from child processes.
  • Loading branch information
eladb committed Jan 11, 2012
2 parents 7dbb6ee + 83e4ac2 commit 2f7b082
Showing 1 changed file with 5 additions and 3 deletions.
8 changes: 5 additions & 3 deletions lib/spinner.js
Expand Up @@ -256,9 +256,11 @@ exports.createSpinner = function(globalOptions) {
spinner.child.stdout.on('data', function(data) { return spinner.emit('stdout', data); });
spinner.child.stderr.on('data', function(data) { return spinner.emit('stderr', data); });

// pipe stdout/stderr if requested
if (spinner.options.stdout) spinner.child.stdout.pipe(spinner.options.stdout);
if (spinner.options.stderr) spinner.child.stderr.pipe(spinner.options.stderr);
// pipe stdout/stderr if requested
// keep the original streams opened after close event
// as of node 0.6+ process.stdout.end() throws
if (spinner.options.stdout) spinner.child.stdout.pipe(spinner.options.stdout, { end: false });
if (spinner.options.stderr) spinner.child.stderr.pipe(spinner.options.stderr, { end: false });

spinner.state = 'wait';

Expand Down

0 comments on commit 2f7b082

Please sign in to comment.