diff options
author | Jackson Tian <shyvo1987@gmail.com> | 2014-08-06 07:21:59 +0400 |
---|---|---|
committer | Timothy J Fontaine <tjfontaine@gmail.com> | 2014-08-07 22:27:12 +0400 |
commit | cc08106d6283040fc4c58005b639dae366b18b67 (patch) | |
tree | 57ef3019fd05c265bcec2890a487d59c4b2d95e6 | |
parent | 70cc9968f667ce110a3a99db6a24b64eb8a3c32e (diff) |
fs: fix fs.readFileSync fd leak when get RangeError
-rw-r--r-- | lib/fs.js | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/fs.js b/lib/fs.js index 990eb6d3313..1e3dc6415a6 100644 --- a/lib/fs.js +++ b/lib/fs.js @@ -304,7 +304,13 @@ fs.readFileSync = function(path, options) { if (size === 0) { buffers = []; } else { - buffer = new Buffer(size); + var threw = true; + try { + buffer = new Buffer(size); + threw = false; + } finally { + if (threw) fs.closeSync(fd); + } } var done = false; |