interface: if header is on other chain already, just switch (regression)
This commit is contained in:
@@ -423,10 +423,13 @@ class Interface(PrintError):
|
|||||||
assert 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 = self.blockchain.check_header(header) if 'mock' not in header else header['mock']['check'](header)
|
|
||||||
if chain: return 'catchup', height+1
|
|
||||||
can_connect = blockchain.can_connect(header) if 'mock' not in header else header['mock']['connect'](height)
|
|
||||||
|
|
||||||
|
chain = blockchain.check_header(header) if 'mock' not in header else header['mock']['check'](header)
|
||||||
|
if chain:
|
||||||
|
self.blockchain = chain
|
||||||
|
return 'catchup', height+1
|
||||||
|
|
||||||
|
can_connect = blockchain.can_connect(header) if 'mock' not in header else header['mock']['connect'](height)
|
||||||
if not can_connect:
|
if not can_connect:
|
||||||
self.print_error("can't connect", height)
|
self.print_error("can't connect", height)
|
||||||
height, header, bad, bad_header = await self._search_headers_backwards(height, header)
|
height, header, bad, bad_header = await self._search_headers_backwards(height, header)
|
||||||
|
|||||||
Reference in New Issue
Block a user