diff --git a/ethcore/src/client/client.rs b/ethcore/src/client/client.rs index a738fbfa2..285778ffc 100644 --- a/ethcore/src/client/client.rs +++ b/ethcore/src/client/client.rs @@ -1134,7 +1134,7 @@ impl Client { T: trace::Tracer, V: trace::VMTracer, { - let options = options.dont_check_nonce(); + let options = options.dont_check_nonce().save_output_from_contract(); let original_state = if state_diff { Some(state.clone()) } else { None }; let mut ret = Executive::new(state, env_info, engine).transact_virtual(transaction, options)?; diff --git a/ethcore/src/miner/miner.rs b/ethcore/src/miner/miner.rs index a294792a5..f8decef1b 100644 --- a/ethcore/src/miner/miner.rs +++ b/ethcore/src/miner/miner.rs @@ -743,10 +743,10 @@ impl MinerService for Miner { .map_err(ExecutionError::from)?; } let mut ret = match (analytics.transaction_tracing, analytics.vm_tracing) { - (true, true) => Executive::new(&mut state, &env_info, &*self.engine).transact(t, TransactOptions::with_tracing_and_vm_tracing())?, - (true, false) => Executive::new(&mut state, &env_info, &*self.engine).transact(t, TransactOptions::with_tracing())?, - (false, true) => Executive::new(&mut state, &env_info, &*self.engine).transact(t, TransactOptions::with_vm_tracing())?, - (false, false) => Executive::new(&mut state, &env_info, &*self.engine).transact(t, TransactOptions::with_no_tracing())?, + (true, true) => Executive::new(&mut state, &env_info, &*self.engine).transact(t, TransactOptions::with_tracing_and_vm_tracing().save_output_from_contract())?, + (true, false) => Executive::new(&mut state, &env_info, &*self.engine).transact(t, TransactOptions::with_tracing().save_output_from_contract())?, + (false, true) => Executive::new(&mut state, &env_info, &*self.engine).transact(t, TransactOptions::with_vm_tracing().save_output_from_contract())?, + (false, false) => Executive::new(&mut state, &env_info, &*self.engine).transact(t, TransactOptions::with_no_tracing().save_output_from_contract())?, }; // TODO gav move this into Executive.