diff options
author | Samy Pessé <samypesse@gmail.com> | 2015-01-29 22:42:41 +0100 |
---|---|---|
committer | Samy Pessé <samypesse@gmail.com> | 2015-01-29 22:42:41 +0100 |
commit | 56907044443ba42eaa0faa7733d90d41cf513966 (patch) | |
tree | ebce42b47978129b499d58b00c8e11d245eb7243 /lib/utils/fs.js | |
parent | 8a8ffb613442bb37570a5081bf3e1b7943c4b61e (diff) | |
download | gitbook-56907044443ba42eaa0faa7733d90d41cf513966.zip gitbook-56907044443ba42eaa0faa7733d90d41cf513966.tar.gz gitbook-56907044443ba42eaa0faa7733d90d41cf513966.tar.bz2 |
Download external images in ebook format
Diffstat (limited to 'lib/utils/fs.js')
-rw-r--r-- | lib/utils/fs.js | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/lib/utils/fs.js b/lib/utils/fs.js index 21956a0..98a3a87 100644 --- a/lib/utils/fs.js +++ b/lib/utils/fs.js @@ -70,20 +70,26 @@ function writeStream(filename, st) { } // Find a filename available -function getUniqueFilename(base) { - var ext = path.extname(base); - base = path.join(path.dirname(base), path.basename(base, ext)); +function getUniqueFilename(base, filename) { + if (!filename) { + filename = base; + base = "/"; + } + + filename = path.resolve(base, filename); + var ext = path.extname(filename); + filename = path.join(path.dirname(filename), path.basename(filename, ext)); - var filename = base+ext; + var _filename = filename+ext; var i = 0; while (1) { if (!fs.existsSync(filename)) break; - filename = base+"_"+i+ext; + _filename = filename+"_"+i+ext; i = i + 1; } - return filename; + return path.relative(base, _filename); } |