diff --git a/crates/revm/revm-inspectors/src/tracing/builder/parity.rs b/crates/revm/revm-inspectors/src/tracing/builder/parity.rs index cce86c4344..7c3720621b 100644 --- a/crates/revm/revm-inspectors/src/tracing/builder/parity.rs +++ b/crates/revm/revm-inspectors/src/tracing/builder/parity.rs @@ -330,7 +330,7 @@ impl ParityTraceBuilder { let maybe_execution = Some(VmExecutedOperation { used: step.gas_cost, - push: step.new_stack.map(|new_stack| new_stack.into()), + push: step.new_stack.into_iter().map(|new_stack| new_stack.into()).collect(), mem: maybe_memory, store: maybe_storage, }); diff --git a/crates/rpc/rpc-types/src/eth/trace/parity.rs b/crates/rpc/rpc-types/src/eth/trace/parity.rs index f3fa4eb9b1..f99f97de67 100644 --- a/crates/rpc/rpc-types/src/eth/trace/parity.rs +++ b/crates/rpc/rpc-types/src/eth/trace/parity.rs @@ -308,16 +308,16 @@ pub struct VmExecutedOperation { /// The total gas used. pub used: u64, /// The stack item placed, if any. - pub push: Option, + pub push: Vec, /// If altered, the memory delta. pub mem: Option, /// The altered storage value, if any. pub store: Option, } +/// A diff of some chunk of memory. #[derive(Clone, Debug, Eq, PartialEq, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] -/// A diff of some chunk of memory. pub struct MemoryDelta { /// Offset into memory the change begins. pub off: usize, @@ -325,6 +325,7 @@ pub struct MemoryDelta { pub data: Bytes, } +/// A diff of some storage value. #[derive(Clone, Debug, Eq, PartialEq, Serialize, Deserialize)] #[serde(rename_all = "camelCase")] pub struct StorageDelta {