diff --git a/browser/components/CodeEditor.js b/browser/components/CodeEditor.js index 872e9ad7..809957da 100644 --- a/browser/components/CodeEditor.js +++ b/browser/components/CodeEditor.js @@ -331,9 +331,14 @@ export default class CodeEditor extends React.Component { const imageDir = path.join(storagePath, 'images') if (!fs.existsSync(imageDir)) fs.mkdirSync(imageDir) const imagePath = path.join(imageDir, `${imageName}.png`) - fs.writeFile(imagePath, binaryData, 'binary') - const imageMd = `![${imageName}](${path.join('/:storage', `${imageName}.png`)})` - this.insertImageMd(imageMd) + fs.writeFile(imagePath, binaryData, 'binary', (error) => { + if (error) { + throw error + } else { + const imageMd = `![${imageName}](${path.join('/:storage', `${imageName}.png`)})` + this.insertImageMd(imageMd) + } + }) } } else if (this.props.fetchUrlTitle && isURL(pastedTxt) && !isInLinkTag(editor)) { this.handlePasteUrl(e, editor, pastedTxt) diff --git a/browser/main/lib/dataApi/copyImage.js b/browser/main/lib/dataApi/copyImage.js index 6a79b8b7..2664dea6 100644 --- a/browser/main/lib/dataApi/copyImage.js +++ b/browser/main/lib/dataApi/copyImage.js @@ -21,8 +21,12 @@ function copyImage (filePath, storageKey, rename = true) { const imageDir = path.join(targetStorage.path, 'images') if (!fs.existsSync(imageDir)) fs.mkdirSync(imageDir) const outputImage = fs.createWriteStream(path.join(imageDir, basename)) + outputImage.on('error', reject) + inputImage.on('error', reject) + inputImage.on('end', () => { + resolve(basename) + }) inputImage.pipe(outputImage) - resolve(basename) } catch (e) { return reject(e) }