Browse Source
interface: if header is on other chain already, just switch (regression)
3.3.3.1
SomberNight
7 years ago
No known key found for this signature in database
GPG Key ID: B33B5F232C6271E9
1 changed files with
6 additions and
3 deletions
-
electrum/interface.py
|
|
@ -423,10 +423,13 @@ class Interface(PrintError): |
|
|
|
assert height <= self.tip, (height, self.tip) |
|
|
|
if header is None: |
|
|
|
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: |
|
|
|
self.print_error("can't connect", height) |
|
|
|
height, header, bad, bad_header = await self._search_headers_backwards(height, header) |
|
|
|