mirror of
https://github.com/lovell/sharp.git
synced 2025-07-09 10:30:15 +02:00
Use copy+unlink if rename fails during install #1345
This commit is contained in:
parent
a15a9b956b
commit
ece111280b
@ -4,6 +4,11 @@
|
||||
|
||||
Requires libvips v8.6.1.
|
||||
|
||||
#### v0.20.7 - TBD
|
||||
|
||||
* Use copy+unlink if rename operation fails during installation.
|
||||
[#1345](https://github.com/lovell/sharp/issues/1345)
|
||||
|
||||
#### v0.20.6 - 20<sup>th</sup> August 2018
|
||||
|
||||
* Add removeAlpha operation to remove alpha channel, if any.
|
||||
|
@ -9,6 +9,7 @@ const npmLog = require('npmlog');
|
||||
const semver = require('semver');
|
||||
const simpleGet = require('simple-get');
|
||||
const tar = require('tar');
|
||||
const copyFileSync = require('fs-copy-file-sync');
|
||||
|
||||
const agent = require('../lib/agent');
|
||||
const libvips = require('../lib/libvips');
|
||||
@ -82,7 +83,14 @@ try {
|
||||
response.pipe(tmpFile);
|
||||
});
|
||||
tmpFile.on('close', function () {
|
||||
try {
|
||||
// Attempt to rename
|
||||
fs.renameSync(tarPathTemp, tarPathCache);
|
||||
} catch (err) {
|
||||
// Fall back to copy and unlink
|
||||
copyFileSync(tarPathTemp, tarPathCache);
|
||||
fs.unlinkSync(tarPathTemp);
|
||||
}
|
||||
extractTarball(tarPathCache);
|
||||
});
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user