mirror of
https://github.com/LBRYFoundation/LBRY-Vault.git
synced 2025-09-01 01:35:20 +00:00
interface: fix only-genesis regtest case
This commit is contained in:
parent
5b9b6a931d
commit
0ddccd56c7
1 changed files with 5 additions and 2 deletions
|
@ -438,14 +438,17 @@ class Interface(PrintError):
|
||||||
return last, height
|
return last, height
|
||||||
|
|
||||||
async def step(self, height, header=None):
|
async def step(self, height, header=None):
|
||||||
assert height != 0
|
assert 0 <= height <= self.tip, (height, self.tip)
|
||||||
assert height <= self.tip, (height, self.tip)
|
|
||||||
if header is None:
|
if header is None:
|
||||||
header = await self.get_block_header(height, 'catchup')
|
header = await self.get_block_header(height, 'catchup')
|
||||||
|
|
||||||
chain = blockchain.check_header(header) if 'mock' not in header else header['mock']['check'](header)
|
chain = blockchain.check_header(header) if 'mock' not in header else header['mock']['check'](header)
|
||||||
if chain:
|
if chain:
|
||||||
self.blockchain = chain if isinstance(chain, Blockchain) else self.blockchain
|
self.blockchain = chain if isinstance(chain, Blockchain) else self.blockchain
|
||||||
|
# note: there is an edge case here that is not handled.
|
||||||
|
# we might know the blockhash (enough for check_header) but
|
||||||
|
# not have the header itself. e.g. regtest chain with only genesis.
|
||||||
|
# this situation resolves itself on the next block
|
||||||
return 'catchup', height+1
|
return 'catchup', height+1
|
||||||
|
|
||||||
can_connect = blockchain.can_connect(header) if 'mock' not in header else header['mock']['connect'](height)
|
can_connect = blockchain.can_connect(header) if 'mock' not in header else header['mock']['connect'](height)
|
||||||
|
|
Loading…
Add table
Reference in a new issue