eth: fix error in tracing if reexec is set (#21830)

* eth: fix error in tracing if reexec is set

* eth: change pointer embedding to value-embedding
This commit is contained in:
Martin Holst Swende 2020-12-02 12:49:20 +01:00 committed by GitHub
parent 908c18073a
commit e9e86aeacb
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -65,7 +65,7 @@ type TraceConfig struct {
// StdTraceConfig holds extra parameters to standard-json trace functions. // StdTraceConfig holds extra parameters to standard-json trace functions.
type StdTraceConfig struct { type StdTraceConfig struct {
*vm.LogConfig vm.LogConfig
Reexec *uint64 Reexec *uint64
TxHash common.Hash TxHash common.Hash
} }
@ -549,9 +549,7 @@ func (api *PrivateDebugAPI) standardTraceBlockToFile(ctx context.Context, block
txHash common.Hash txHash common.Hash
) )
if config != nil { if config != nil {
if config.LogConfig != nil { logConfig = config.LogConfig
logConfig = *config.LogConfig
}
txHash = config.TxHash txHash = config.TxHash
} }
logConfig.Debug = true logConfig.Debug = true
@ -576,7 +574,7 @@ func (api *PrivateDebugAPI) standardTraceBlockToFile(ctx context.Context, block
chainConfigCopy := new(params.ChainConfig) chainConfigCopy := new(params.ChainConfig)
*chainConfigCopy = *chainConfig *chainConfigCopy = *chainConfig
chainConfig = chainConfigCopy chainConfig = chainConfigCopy
if yolov2 := config.Overrides.YoloV2Block; yolov2 != nil { if yolov2 := config.LogConfig.Overrides.YoloV2Block; yolov2 != nil {
chainConfig.YoloV2Block = yolov2 chainConfig.YoloV2Block = yolov2
canon = false canon = false
} }