From 822bebea46fae12d3acc622b7f55495f077e8b09 Mon Sep 17 00:00:00 2001 From: Greg Fitzgerald Date: Wed, 20 Feb 2019 15:36:10 -0700 Subject: [PATCH] Allow multiple forks without regenerating the hash --- runtime/src/bank.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/runtime/src/bank.rs b/runtime/src/bank.rs index ecc517e42a..ed0d365990 100644 --- a/runtime/src/bank.rs +++ b/runtime/src/bank.rs @@ -105,8 +105,10 @@ impl Bank { pub fn new_from_parent(parent: &Arc) -> Self { let mut bank = Self::default(); bank.last_id_queue = RwLock::new(parent.last_id_queue.read().unwrap().clone()); - *parent.hash.write().unwrap() = parent.hash_internal_state(); bank.parent = Some(parent.clone()); + if *parent.hash.read().unwrap() == Hash::default() { + *parent.hash.write().unwrap() = parent.hash_internal_state(); + } bank }