From 24f9771716f7b17beaaff309b6e3bec4ecfc84ab Mon Sep 17 00:00:00 2001 From: debris Date: Tue, 1 Dec 2015 02:04:52 +0100 Subject: [PATCH] fixed take_node lifetimes --- src/trie.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/trie.rs b/src/trie.rs index 58354fcce..55cbeb6c5 100644 --- a/src/trie.rs +++ b/src/trie.rs @@ -137,13 +137,13 @@ impl TrieDB { /// Return the bytes encoding the node represented by `rlp`. It will be unlinked from /// the trie. - fn take_node(&self, rlp: &Rlp, diff: &mut Diff) -> Bytes { + fn take_node<'a, 'rlp_view>(&'a self, rlp: &'rlp_view Rlp<'a>, diff: &mut Diff) -> &'a [u8] where 'a: 'rlp_view { if (rlp.is_list()) { - rlp.raw().to_vec() + rlp.raw() } else if (rlp.is_data() && rlp.size() == 32) { let h = H256::decode(rlp); - let r = self.db.lookup(&h).expect("Trie root not found!").to_vec(); + let r = self.db.lookup(&h).expect("Trie root not found!"); diff.delete_node_sha3(h); r }