diff --git a/iguana/iguana_notary.c b/iguana/iguana_notary.c index d4ca6d5d7..a321e41ff 100755 --- a/iguana/iguana_notary.c +++ b/iguana/iguana_notary.c @@ -790,23 +790,26 @@ void dpow_handler(struct supernet_info *myinfo,struct basilisk_message *msg) } else if ( channel == DPOW_TXIDCHANNEL || channel == DPOW_BTCTXIDCHANNEL ) { - if ( (bp= dpow_heightfind(myinfo,height,channel == DPOW_BTCTXIDCHANNEL)) != 0 && bp->state != 0xffffffff ) + if ( (bp= dpow_heightfind(myinfo,height,channel == DPOW_BTCTXIDCHANNEL)) != 0 ) { - for (i=0; i<32; i++) - srchash.bytes[i] = msg->data[i]; - txid = bits256_doublesha256(0,&msg->data[32],msg->datalen-32); - init_hexbytes_noT(bp->signedtx,&msg->data[32],msg->datalen-32); - if ( bits256_cmp(txid,srchash) == 0 ) + if ( bp->state != 0xffffffff ) { - printf("verify (%s) it is properly signed! set ht.%d signedtxid to %s\n",bp->coin->symbol,height,bits256_str(str,txid)); - bp->signedtxid = txid; - bp->state = 0xffffffff; - } - else - { - init_hexbytes_noT(bp->signedtx,msg->data,msg->datalen); - printf("txidchannel txid %s mismatch %s (%s)\n",bits256_str(str,txid),bits256_str(str2,srchash),bp->signedtx); - bp->signedtx[0] = 0; + for (i=0; i<32; i++) + srchash.bytes[i] = msg->data[i]; + txid = bits256_doublesha256(0,&msg->data[32],msg->datalen-32); + init_hexbytes_noT(bp->signedtx,&msg->data[32],msg->datalen-32); + if ( bits256_cmp(txid,srchash) == 0 ) + { + printf("verify (%s) it is properly signed! set ht.%d signedtxid to %s\n",bp->coin->symbol,height,bits256_str(str,txid)); + bp->signedtxid = txid; + bp->state = 0xffffffff; + } + else + { + init_hexbytes_noT(bp->signedtx,msg->data,msg->datalen); + printf("txidchannel txid %s mismatch %s (%s)\n",bits256_str(str,txid),bits256_str(str2,srchash),bp->signedtx); + bp->signedtx[0] = 0; + } } } else printf("txidchannel cant find bp for %d\n",height); }