From 0fe4ac43ba760b3abeb94368ca760839d4437270 Mon Sep 17 00:00:00 2001 From: Ross Nicoll Date: Fri, 16 Oct 2015 18:59:54 +0100 Subject: [PATCH] Skip parsing AuxPoW block header where the header is too short (i.e. checkpoint blocks) --- src/main/java/org/bitcoinj/core/AltcoinBlock.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/org/bitcoinj/core/AltcoinBlock.java b/src/main/java/org/bitcoinj/core/AltcoinBlock.java index 9ba63a53..6c506ba8 100644 --- a/src/main/java/org/bitcoinj/core/AltcoinBlock.java +++ b/src/main/java/org/bitcoinj/core/AltcoinBlock.java @@ -196,9 +196,8 @@ public class AltcoinBlock extends org.bitcoinj.core.Block { this.auxpow = null; if (this.auxpowChain) { final AuxPoWNetworkParameters auxpowParams = (AuxPoWNetworkParameters)this.params; - if (auxpowParams.isAuxPoWBlockVersion(this.getRawVersion())) { - // The following is used in dogecoinj, but I don't think we necessarily need it - // payload.length >= 160) { // We have at least 2 headers in an Aux block. Workaround for StoredBlocks + if (auxpowParams.isAuxPoWBlockVersion(this.getRawVersion()) + && payload.length >= 160) { // We have at least 2 headers in an Aux block. Workaround for StoredBlocks this.auxpow = new AuxPoW(params, payload, cursor, this, serializer); optimalEncodingMessageSize += auxpow.getOptimalEncodingMessageSize(); }