fix bug if headers file is empty
This commit is contained in:
parent
97343d95e5
commit
feb0f483f5
|
@ -286,6 +286,8 @@ class Blockchain(util.PrintError):
|
|||
height = header['block_height']
|
||||
if self.height() != height - 1:
|
||||
return False
|
||||
if height == 0:
|
||||
return hash_header(header) == bitcoin.GENESIS
|
||||
previous_header = self.read_header(height -1)
|
||||
if not previous_header:
|
||||
return False
|
||||
|
|
|
@ -990,11 +990,19 @@ class Network(util.DaemonThread):
|
|||
self.notify('interfaces')
|
||||
self.switch_lagging_interface()
|
||||
return
|
||||
tip = max([x.height() for x in self.blockchains.values()])
|
||||
if tip >=0:
|
||||
interface.mode = 'backward'
|
||||
interface.bad = height
|
||||
interface.bad_header = header
|
||||
tip = max([x.height() for x in self.blockchains.values()])
|
||||
self.request_header(interface, tip)
|
||||
else:
|
||||
chain = self.blockchains[0]
|
||||
if chain.catch_up is None:
|
||||
chain.catch_up = interface
|
||||
interface.mode = 'catch_up'
|
||||
interface.blockchain = chain
|
||||
self.request_header(interface, 0)
|
||||
|
||||
def blockchain(self):
|
||||
if self.interface and self.interface.blockchain is not None:
|
||||
|
|
Loading…
Reference in New Issue