diff --git a/src/main-process/file-recovery-service.js b/src/main-process/file-recovery-service.js index d60006b28..abe2df84e 100644 --- a/src/main-process/file-recovery-service.js +++ b/src/main-process/file-recovery-service.js @@ -147,17 +147,19 @@ async function tryStatFile (path) { } async function copyFile (source, destination, mode) { - await mkdirp(Path.dirname(destination)) return new Promise((resolve, reject) => { - const readStream = fs.createReadStream(source) - readStream - .on('error', reject) - .once('open', () => { - const writeStream = fs.createWriteStream(destination, {mode}) - writeStream - .on('error', reject) - .on('open', () => readStream.pipe(writeStream)) - .once('close', () => resolve()) - }) + mkdirp(Path.dirname(destination), (error) => { + if (error) return reject(error) + const readStream = fs.createReadStream(source) + readStream + .on('error', reject) + .once('open', () => { + const writeStream = fs.createWriteStream(destination, {mode}) + writeStream + .on('error', reject) + .on('open', () => readStream.pipe(writeStream)) + .once('close', () => resolve()) + }) + }) }) }