From e298ab30e4b1ef957d7471747e74b256b681b29b Mon Sep 17 00:00:00 2001 From: Arkadiy Paronyan Date: Thu, 29 Sep 2016 14:47:13 +0200 Subject: [PATCH] Quick fix for missing tree route blocks (#2400) --- sync/src/chain.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sync/src/chain.rs b/sync/src/chain.rs index 97dc47d00..c4236e570 100644 --- a/sync/src/chain.rs +++ b/sync/src/chain.rs @@ -1346,8 +1346,10 @@ impl ChainSync { let mut rlp_stream = RlpStream::new_list(blocks.len()); for block_hash in blocks { let mut hash_rlp = RlpStream::new_list(2); - let number = HeaderView::new(&chain.block_header(BlockID::Hash(block_hash.clone())) - .expect("chain.tree_route and chain.find_uncles only return hahses of blocks that are in the blockchain. qed.")).number(); + let number = match chain.block_header(BlockID::Hash(block_hash.clone())) { + Some(header) => HeaderView::new(&header).number(), + _ => return None, + }; hash_rlp.append(&block_hash); hash_rlp.append(&number); rlp_stream.append_raw(hash_rlp.as_raw(), 1);