From fcc7f996071c9f3b78ab15a5498e60f843b07282 Mon Sep 17 00:00:00 2001 From: Kris Zyp Date: Fri, 30 Jul 2010 09:44:33 -0600 Subject: [PATCH] Fix makeTree and tolerate "b" in mode --- lib/fs.js | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/lib/fs.js b/lib/fs.js index 92af153..173309c 100644 --- a/lib/fs.js +++ b/lib/fs.js @@ -116,26 +116,33 @@ exports.close = function(file){ var nodeOpenSync = exports.openSync; exports.openSync = function(){ + if(typeof mode == "string"){ + arguments[1] = mode.replace(/b/,''); + } return File(nodeOpenSync.apply(this, arguments)); }; nodeOpen = exports.open; -exports.open = function(){ +exports.open = function(path, mode){ + if(typeof mode == "string"){ + arguments[1] = mode.replace(/b/,''); + } return File(nodeOpen.apply(this, arguments)); }; exports.makeDirectory = exports.mkdirSync; exports.makeTree = function(path){ - var index = path.lastIndexOf('/'); - if(index === -1){ - return; + if(path.charAt(path.length-1) == '/') { + path = path.substring(0, path.length - 1); } - var path = path.substring(0, index); try{ fs.statSync(path); }catch(e){ - exports.makeTree(path); + var index = path.lastIndexOf('/'); + if(index > -1){ + exports.makeTree(path.substring(0, index)); + } fs.mkdirSync(path, 0777); } }; \ No newline at end of file