From 517f5a5078bc0f1807c2b009ac8b92d6f2a074b4 Mon Sep 17 00:00:00 2001 From: "fletcher.fan" Date: Mon, 18 Mar 2024 17:37:36 +0800 Subject: [PATCH] create copy of variables used in loop --- node/derivation/batch_info.go | 3 ++- node/derivation/derivation.go | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/node/derivation/batch_info.go b/node/derivation/batch_info.go index 26db2374d..fd055a523 100644 --- a/node/derivation/batch_info.go +++ b/node/derivation/batch_info.go @@ -89,7 +89,8 @@ func (bi *BatchInfo) ParseBatch(batch geth.RPCRollupBatch) error { bi.version = uint64(batch.Version) var txPayload []byte for _, blob := range batch.Sidecar.Blobs { - data, err := types.DecodeRawTxPayload(&blob) + blobCopy := blob + data, err := types.DecodeRawTxPayload(&blobCopy) if err != nil { return err } diff --git a/node/derivation/derivation.go b/node/derivation/derivation.go index 2ecb6bd6d..f182c67ee 100644 --- a/node/derivation/derivation.go +++ b/node/derivation/derivation.go @@ -393,7 +393,8 @@ func (d *Derivation) derive(rollupData *BatchInfo) (*eth.Header, error) { var lastHeader *eth.Header for _, chunk := range rollupData.chunks { for _, blockData := range chunk.blockContextes { - blockData.SafeL2Data.BatchHash = &rollupData.batchHash + batchHash := rollupData.batchHash + blockData.SafeL2Data.BatchHash = &batchHash latestBlockNumber, err := d.l2Client.BlockNumber(context.Background()) if err != nil { return nil, fmt.Errorf("get derivation geth block number error:%v", err)