diff options
author | liam4 <towerofnix@gmail.com> | 2017-06-04 17:09:04 -0300 |
---|---|---|
committer | liam4 <towerofnix@gmail.com> | 2017-06-04 17:09:04 -0300 |
commit | 9fb775446f151b492f17bd42b757b958f5ea3fa0 (patch) | |
tree | bdbcf253ec286341802347e81a3ffa374817e336 /src | |
parent | fbdbed0c46bfc947e66f1896799bfdc614b46524 (diff) |
Fix the spooky youtube-dl problem
Diffstat (limited to 'src')
-rw-r--r-- | src/promisify-process.js | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/promisify-process.js b/src/promisify-process.js index ef8d0c6..4d06f8c 100644 --- a/src/promisify-process.js +++ b/src/promisify-process.js @@ -1,5 +1,7 @@ 'use strict' +const { Writable } = require('stream') + module.exports = function promisifyProcess(proc, showLogging = true) { // Takes a process (from child_process) and returns a promise that resolves // when the process exits (or rejects with a warning, if the exit code is @@ -9,6 +11,16 @@ module.exports = function promisifyProcess(proc, showLogging = true) { if (showLogging) { proc.stdout.pipe(process.stdout) proc.stderr.pipe(process.stderr) + } else { + // For some mysterious reason, youtube-dl doesn't seem to work unless + // we pipe the output of it SOMEWHERE.. + + const emptyStream = () => Object.assign(new Writable(), { + write: () => {} + }) + + proc.stdout.pipe(emptyStream()) + proc.stderr.pipe(emptyStream()) } proc.on('exit', code => { |