Stream Piping and Error Handling
Spot the error-handling flaw when piping a readable stream into a writable stream.
Codejavascript
const fs = require('fs');
const zlib = require('zlib');
function compress(input, output) {
const source = fs.createReadStream(input);
const gzip = zlib.createGzip();
const dest = fs.createWriteStream(output);
source.pipe(gzip).pipe(dest);
dest.on('error', (err) => {
console.error('Compression failed:', err);
});
}
compress('missing.txt', 'out.gz');What is the bug in this code?