From 0fea48d71a389b9d429a638e27bc9210601cc3a4 Mon Sep 17 00:00:00 2001 From: dignifiedquire Date: Fri, 22 Apr 2016 22:51:07 +0200 Subject: [PATCH] fix(block-service): return errors for addBlock --- src/block-service.js | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/block-service.js b/src/block-service.js index 1f89101..64d2b0b 100644 --- a/src/block-service.js +++ b/src/block-service.js @@ -10,8 +10,17 @@ const async = require('async') function BlockService (ipfsRepo, exchange) { this.addBlock = (block, callback) => { const ws = ipfsRepo.datastore.createWriteStream(block.key, block.extension) + + let done = false + ws.write(block.data) - ws.once('finish', callback) + ws.once('error', (err) => { + done = true + callback(err) + }) + ws.once('finish', () => { + if (!done) callback() + }) ws.end() }