ensured trace_filter has a valid block range (#15473)

Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
This commit is contained in:
Ishika Choudhury
2025-04-03 19:17:38 +05:30
committed by GitHub
parent 48e0ec67d0
commit 604cc09230

View File

@@ -246,11 +246,13 @@ where
let matcher = Arc::new(filter.matcher());
let TraceFilter { from_block, to_block, after, count, .. } = filter;
let start = from_block.unwrap_or(0);
let end = if let Some(to_block) = to_block {
to_block
} else {
self.provider().best_block_number().map_err(Eth::Error::from_eth_err)?
};
let latest_block = self.provider().best_block_number().map_err(Eth::Error::from_eth_err)?;
if start > latest_block {
// can't trace that range
return Err(EthApiError::HeaderNotFound(start.into()).into());
}
let end = to_block.unwrap_or(latest_block);
if start > end {
return Err(EthApiError::InvalidParams(