diff --git a/pybtc/connector/block_loader.py b/pybtc/connector/block_loader.py index 83e83f4..57abee5 100644 --- a/pybtc/connector/block_loader.py +++ b/pybtc/connector/block_loader.py @@ -223,25 +223,25 @@ class Worker: for x, y in zip(h, result): if y["result"] is not None: block = decode_block_tx(y["result"]) - # for z in block["rawTx"]: - # for i in block["rawTx"][z]["vIn"]: - # inp = block["rawTx"][z]["vIn"][i] - # outpoint = b"".join((inp["txId"], int_to_bytes(inp["vOut"]))) - # try: - # r = self.coins[outpoint] - # block["rawTx"][z]["vIn"][i]["__coin__"] = (outpoint, r[0], r[1], r[2]) - # self.destroyed_coins[r[0]] = True - # except: - # pass - # for i in block["rawTx"][z]["vOut"]: - # o = b"".join((block["rawTx"][z]["txId"], int_to_bytes(i))) - # pointer = (x << 42) + (z << 21) + i - # try: - # address = block["rawTx"][z]["vOut"][i]["scriptPubKey"] - # except: - # address = b"".join((bytes([block["rawTx"][z]["vOut"][i]["nType"]]), - # block["rawTx"][z]["vOut"][i]["addressHash"])) - # self.coins[o] = (pointer, block["rawTx"][z]["vOut"][i], address) + for z in block["rawTx"]: + for i in block["rawTx"][z]["vIn"]: + inp = block["rawTx"][z]["vIn"][i] + outpoint = b"".join((inp["txId"], int_to_bytes(inp["vOut"]))) + try: + r = self.coins[outpoint] + block["rawTx"][z]["vIn"][i]["__coin__"] = (outpoint, r[0], r[1], r[2]) + self.destroyed_coins[r[0]] = True + except: + pass + for i in block["rawTx"][z]["vOut"]: + o = b"".join((block["rawTx"][z]["txId"], int_to_bytes(i))) + pointer = (x << 42) + (z << 21) + i + try: + address = block["rawTx"][z]["vOut"][i]["scriptPubKey"] + except: + address = b"".join((bytes([block["rawTx"][z]["vOut"][i]["nType"]]), + block["rawTx"][z]["vOut"][i]["addressHash"])) + self.coins[o] = (pointer, block["rawTx"][z]["vOut"][i], address) blocks[x] = block for x in blocks: for y in blocks[x]["rawTx"]: