accounts/abi, signer/fourbyte: fix incorrect signature (#19881)
The abi package already supports function overload by adding a suffix to the overloaded function name, but it uses the function name with suffix to calculate signature(both for the event and method). This PR fixes it by adding a new field named RawName, which can be used to calcuate all signatures but use Name to distinguish different overloaded function.
This commit is contained in:
committed by
Martin Holst Swende
parent
e46a01d56c
commit
947f5f2b15
@ -140,7 +140,7 @@ func parseCallData(calldata []byte, abidata string) (*decodedCallData, error) {
|
||||
return nil, err
|
||||
}
|
||||
// Everything valid, assemble the call infos for the signer
|
||||
decoded := decodedCallData{signature: method.Sig(), name: method.Name}
|
||||
decoded := decodedCallData{signature: method.Sig(), name: method.RawName}
|
||||
for i := 0; i < len(method.Inputs); i++ {
|
||||
decoded.inputs = append(decoded.inputs, decodedArgument{
|
||||
soltype: method.Inputs[i],
|
||||
|
Reference in New Issue
Block a user