From ad76d89a270f563c73bed21c0cd387bae3abc880 Mon Sep 17 00:00:00 2001 From: DaniPopes <57450786+DaniPopes@users.noreply.github.com> Date: Tue, 17 Sep 2024 15:45:47 +0200 Subject: [PATCH] chore: early return EMPTY_ROOT_HASH (#10957) --- crates/rpc/rpc-types-compat/src/engine/payload.rs | 7 +++---- crates/trie/common/src/root.rs | 4 ++++ 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/crates/rpc/rpc-types-compat/src/engine/payload.rs b/crates/rpc/rpc-types-compat/src/engine/payload.rs index bd2401b96a..b5820fd5b1 100644 --- a/crates/rpc/rpc-types-compat/src/engine/payload.rs +++ b/crates/rpc/rpc-types-compat/src/engine/payload.rs @@ -4,8 +4,7 @@ use alloy_primitives::{B256, U256}; use reth_primitives::{ constants::{EMPTY_OMMER_ROOT_HASH, MAXIMUM_EXTRA_DATA_SIZE}, - proofs::{self}, - Block, Header, Request, SealedBlock, TransactionSigned, UintTryTo, Withdrawals, + proofs, Block, Header, Request, SealedBlock, TransactionSigned, Withdrawals, }; use reth_rpc_types::engine::{ payload::{ExecutionPayloadBodyV1, ExecutionPayloadFieldV2, ExecutionPayloadInputV2}, @@ -25,7 +24,7 @@ pub fn try_payload_v1_to_block(payload: ExecutionPayloadV1) -> Result, _>>()?; let transactions_root = proofs::calculate_transaction_root(&transactions); @@ -50,7 +49,7 @@ pub fn try_payload_v1_to_block(payload: ExecutionPayloadV1) -> Result(items: &[T], mut encode: F) -> B256 where F: FnMut(&T, &mut Vec), { + if items.is_empty() { + return alloy_trie::EMPTY_ROOT_HASH; + } + let mut value_buffer = Vec::new(); let mut hb = HashBuilder::default();