From f3f61b4d89ee4e688caa124db118ebaaa4f92dfd Mon Sep 17 00:00:00 2001 From: Manuel Cabral Date: Sat, 27 Dec 2014 17:27:30 +0000 Subject: [PATCH] Fix EPERM error on Windows. --- bin/cmd.js | 34 ++++++++++++++++------------------ 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/bin/cmd.js b/bin/cmd.js index bd0a1b1..9e4e6e4 100755 --- a/bin/cmd.js +++ b/bin/cmd.js @@ -21,27 +21,25 @@ w.on('update', bundle); bundle(); function bundle () { - var wb = w.bundle(); - wb.on('error', function (err) { - console.error(String(err)); - fs.writeFile(outfile, 'console.error('+JSON.stringify(String(err))+')', function(err) { - if (err) console.error(err); - }) - }); - wb.pipe(fs.createWriteStream(dotfile)); - - var bytes, time; - w.on('bytes', function (b) { bytes = b }); - w.on('time', function (t) { time = t }); - - wb.on('end', function () { - fs.rename(dotfile, outfile, function (err) { - if (err) return console.error(err); + w.bundle(function(err, buf) { + if(err) { + console.error(String(err)); + fs.writeFile(outfile, 'console.error('+JSON.stringify(String(err))+')', function(err) { + if (err) console.error(err); + }) + } + else { + fs.writeFile(outfile, buf, function(err) { + if (err) console.error(err); + }) if (verbose) { - console.error(bytes + ' bytes written to ' + outfile + console.error(buf.length + ' bytes written to ' + outfile + ' (' + (time / 1000).toFixed(2) + ' seconds)' ); } - }); + } }); + + var time = 0; + w.on('time', function (t) { time = t }); }