From 12d59b58e2dffb3cb7a034d651a208f9f6ef3c6c Mon Sep 17 00:00:00 2001 From: Sina Mahmoodi Date: Thu, 14 Dec 2023 12:25:18 +0330 Subject: [PATCH] update transfer log address --- internal/ethapi/api_test.go | 4 ++-- internal/ethapi/transfertracer.go | 10 +++++++--- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/internal/ethapi/api_test.go b/internal/ethapi/api_test.go index 975a41e908..6a87bd784b 100644 --- a/internal/ethapi/api_test.go +++ b/internal/ethapi/api_test.go @@ -1489,7 +1489,7 @@ func TestMulticallV1(t *testing.T) { ReturnValue: "0x", GasUsed: "0xd984", Logs: []log{{ - Address: common.Address{}, + Address: transferAddress, Topics: []common.Hash{ transferTopic, accounts[0].addr.Hash(), @@ -1498,7 +1498,7 @@ func TestMulticallV1(t *testing.T) { Data: hexutil.Bytes(common.BigToHash(big.NewInt(50)).Bytes()), BlockNumber: hexutil.Uint64(11), }, { - Address: common.Address{}, + Address: transferAddress, Topics: []common.Hash{ transferTopic, randomAccounts[0].addr.Hash(), diff --git a/internal/ethapi/transfertracer.go b/internal/ethapi/transfertracer.go index 7489d12bfd..96eb78e120 100644 --- a/internal/ethapi/transfertracer.go +++ b/internal/ethapi/transfertracer.go @@ -25,8 +25,12 @@ import ( "github.com/ethereum/go-ethereum/core/vm" ) -// keccak256("Transfer(address,address,uint256)") -var transferTopic = common.HexToHash("ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef") +var ( + // keccak256("Transfer(address,address,uint256)") + transferTopic = common.HexToHash("ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef") + // ERC-7528 + transferAddress = common.HexToAddress("0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE") +) // tracer is a simple tracer that records all logs and // ether transfers. Transfers are recorded as if they @@ -168,7 +172,7 @@ func (t *tracer) captureTransfer(from, to common.Address, value *big.Int) { common.BytesToHash(from.Bytes()), common.BytesToHash(to.Bytes()), } - t.captureLog(common.Address{}, topics, common.BigToHash(value).Bytes()) + t.captureLog(transferAddress, topics, common.BigToHash(value).Bytes()) } func (t *tracer) Logs() []*types.Log {