From 9fc1db32802df5ac28e1c5510b99269412a85259 Mon Sep 17 00:00:00 2001 From: Andrew Jones Date: Wed, 8 May 2019 12:20:43 +0100 Subject: [PATCH] Use saturating_pow for max digest interval (#2506) * Use saturating_pow for max digest interval * Impl version --- substrate/core/primitives/src/changes_trie.rs | 11 +---------- substrate/node/runtime/src/lib.rs | 2 +- 2 files changed, 2 insertions(+), 11 deletions(-) diff --git a/substrate/core/primitives/src/changes_trie.rs b/substrate/core/primitives/src/changes_trie.rs index 9cf0066d71..2fa11f5641 100644 --- a/substrate/core/primitives/src/changes_trie.rs +++ b/substrate/core/primitives/src/changes_trie.rs @@ -53,16 +53,7 @@ impl ChangesTrieConfiguration { return 1; } - // FIXME: use saturating_pow once stabilized - https://github.com/rust-lang/rust/issues/48320 - let mut max_digest_interval = self.digest_interval; - for _ in 1..self.digest_levels { - max_digest_interval = match max_digest_interval.checked_mul(self.digest_interval) { - Some(max_digest_interval) => max_digest_interval, - None => return u64::max_value(), - } - } - - max_digest_interval + self.digest_interval.saturating_pow(self.digest_levels) } /// Returns Some if digest must be built at given block number. diff --git a/substrate/node/runtime/src/lib.rs b/substrate/node/runtime/src/lib.rs index 69a19bf05e..b3daece243 100644 --- a/substrate/node/runtime/src/lib.rs +++ b/substrate/node/runtime/src/lib.rs @@ -59,7 +59,7 @@ pub const VERSION: RuntimeVersion = RuntimeVersion { impl_name: create_runtime_str!("substrate-node"), authoring_version: 10, spec_version: 72, - impl_version: 73, + impl_version: 74, apis: RUNTIME_API_VERSIONS, };