emit orphan event.

This commit is contained in:
Christopher Jeffrey 2015-12-18 20:33:19 -08:00
parent 283157dd71
commit 9fe8afa7d3

View File

@ -354,28 +354,31 @@ Pool.prototype._addPeer = function _addPeer(backoff) {
backoff = 0;
var len = self.chain.index.hashes.length;
var hash = block.hash('hex');
self._response(block);
var hash = block.hash('hex');
var len = self.chain.index.hashes.length;
var orphan = self.chain.hasOrphan(block);
var err = self.chain.add(block);
if (err)
self.emit('chain-error', err, peer);
if (self.chain.hasOrphan(block))
peer.loadBlocks(self.chain.locatorHashes(), self.chain.getOrphanRoot(block));
self.emit('_block', block, peer);
if (self.chain.hasOrphan(block)) {
peer.loadBlocks(self.chain.locatorHashes(), self.chain.getOrphanRoot(block));
if (!orphan)
self.emit('orphan', block, peer);
return;
}
if (self.chain.index.hashes.length === len)
return;
var top = self.chain.index.hashes[self.chain.index.hashes.length - 1];
if (top === self.bestBlock)
self.needSync = false;
else
self.needSync = true;
self.needSync = top !== self.bestBlock;
self.emit('chain-progress', self.chain.fillPercent(), peer);
self.emit('block', block, peer);