From a78eabda37fa5d74530c63cd5bf5d1ede7733e1c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Rapha=C3=ABl=20Proust?= Date: Thu, 14 Jun 2018 09:41:50 +0800 Subject: [PATCH] Alpha/Baker: Remember delegates --- src/proto_alpha/lib_delegate/client_baking_forge.ml | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/proto_alpha/lib_delegate/client_baking_forge.ml b/src/proto_alpha/lib_delegate/client_baking_forge.ml index ea40999ad..9bb60e4a1 100644 --- a/src/proto_alpha/lib_delegate/client_baking_forge.ml +++ b/src/proto_alpha/lib_delegate/client_baking_forge.ml @@ -361,7 +361,7 @@ let rec insert_baking_slot slot = function type state = { genesis: Block_hash.t ; - delegates: public_key_hash list ; + mutable delegates: public_key_hash list ; mutable best: Client_baking_blocks.block_info ; mutable future_slots: (Time.t * (Client_baking_blocks.block_info * int * public_key_hash)) list ; @@ -435,13 +435,18 @@ let get_delegates cctxt state = match state.delegates with | [] -> Client_keys.get_keys cctxt >>=? fun keys -> - return (List.map (fun (_,pkh,_,_) -> pkh) keys) + let delegates = List.map (fun (_,pkh,_,_) -> pkh) keys in + state.delegates <- delegates; + return delegates | _ :: _ as delegates -> return delegates let insert_block - (cctxt : #Proto_alpha.full) ?max_priority state (bi: Client_baking_blocks.block_info) = + (cctxt: #Proto_alpha.full) + ?max_priority + state + (bi: Client_baking_blocks.block_info) = begin safe_get_unrevealed_nonces cctxt (`Hash (bi.hash, 0)) >>= fun nonces -> Client_baking_revelation.forge_seed_nonce_revelation