fs: fix leak of end listener in ReadStream
When read is end, it leaves listener of end
event.
This could be checked this way:
var fs = require('fs'),
read = fs.createReadStream(__filename),
write = fs.createWriteStream(__filename + '-copy');
read.pipe(write);
read.once('end', function() {
var listeners = read.listeners('end');
console.log('' + listeners[0])
});
The code will log this function:
function () {
if (this.autoClose) {
this.destroy();
}
}
Version of iojs
is:
> iojs -v
v1.8.1