ryanmcgrath / wrench-js

Recursive file operations in Node.js
MIT License
435 stars 71 forks source link

Line reader doesn't close open files, results in "too many open files" error. #32

Closed jarod2d closed 12 years ago

jarod2d commented 12 years ago

Line readers open files but don't ever close them. If you create enough line readers you'll get the error EMFILE, too many open files. The files need to be closed to avoid this.

There isn't really a way for the line reader to close the file automatically because it doesn't know when the user is done with it, so the user will need to close the file themselves. Currently they can do so by doing something like fs.closeSync(reader.fd), but this isn't documented -- they'll need to look at the source to know that they can grab the file descriptor from the reader.

This should be documented in the readme, and perhaps a function should be added to the line reader that performs the close for you.

ryanmcgrath commented 12 years ago

Done. 4 months late, but done.

jarod2d commented 12 years ago

Awesome, thanks!