Skip to content

Commit

Permalink
fix: multisig support call invoke contract
Browse files Browse the repository at this point in the history
  • Loading branch information
go-lifei committed Mar 19, 2024
1 parent dd4bce0 commit 7ed4682
Showing 1 changed file with 30 additions and 3 deletions.
33 changes: 30 additions & 3 deletions cli/multisig.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"encoding/hex"
"encoding/json"
"fmt"
builtintypes "github.com/filecoin-project/go-state-types/builtin"
"reflect"
"sort"
"strconv"
Expand Down Expand Up @@ -410,7 +411,16 @@ var msigProposeCmd = &cli.Command{
if err != nil {
return err
}
params = p

if abi.MethodNum(method) == builtintypes.MethodsEVM.InvokeContract {
var buffer bytes.Buffer
if err := cbg.WriteByteArray(&buffer, p); err != nil {
return xerrors.Errorf("failed to encode evm params as cbor: %w", err)
}
params = buffer.Bytes()
} else {
params = p
}
}

var from address.Address
Expand Down Expand Up @@ -582,7 +592,15 @@ var msigApproveCmd = &cli.Command{
if err != nil {
return err
}
params = p
if abi.MethodNum(method) == builtintypes.MethodsEVM.InvokeContract {
var buffer bytes.Buffer
if err := cbg.WriteByteArray(&buffer, p); err != nil {
return xerrors.Errorf("failed to encode evm params as cbor: %w", err)
}
params = buffer.Bytes()
} else {
params = p
}
}

proto, err := api.MsigApproveTxnHash(ctx, msig, txid, proposer, dest, types.BigInt(value), from, method, params)
Expand Down Expand Up @@ -707,7 +725,16 @@ var msigCancelCmd = &cli.Command{
if err != nil {
return err
}
params = p

if abi.MethodNum(method) == builtintypes.MethodsEVM.InvokeContract {
var buffer bytes.Buffer
if err := cbg.WriteByteArray(&buffer, p); err != nil {
return xerrors.Errorf("failed to encode evm params as cbor: %w", err)
}
params = buffer.Bytes()
} else {
params = p
}
}

proto, err := api.MsigCancelTxnHash(ctx, msig, txid, dest, types.BigInt(value), from, method, params)
Expand Down

0 comments on commit 7ed4682

Please sign in to comment.