Working as designed. The 'end' event doesn't happen until you read PAST the last chunk. If there's no data in the buffer, then that read() returns null, and then 'end' is emitted.
The reason for this is to prevent 'end' being emitted before you have a chance to attach a listener, on zero-length readable streams (ie, streams that end without *ever* having any data). On Mon, Sep 9, 2013 at 12:38 AM, greelgorke <[email protected]> wrote: > may be you should place an issue on github? > > Am Sonntag, 8. September 2013 20:35:30 UTC+2 schrieb Oscar Torrente Artero: >> >> Well, I insist. >> If you try this code: >> >> var fs = require("fs") >> var readable = fs.createReadStream("file.txt") >> readable.on("end", function () { console.log("End") }) >> readable.on("readable", function () { var chunk = >> readable.read(1); console.log(chunk.toString()) }) >> >> you will see "readable" event is emitted twice (!!??) when I think it >> should be emitted many times as until buffer is drained (namely, many times >> as bytes are inside "file.txt"), shouldn't??!! >> > -- > -- > Job Board: http://jobs.nodejs.org/ > Posting guidelines: > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines > You received this message because you are subscribed to the Google > Groups "nodejs" group. > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected] > For more options, visit this group at > http://groups.google.com/group/nodejs?hl=en?hl=en > > --- > You received this message because you are subscribed to the Google Groups > "nodejs" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > For more options, visit https://groups.google.com/groups/opt_out. -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/groups/opt_out.
