diff --git a/chain/types/ethtypes/eth_transactions.go b/chain/types/ethtypes/eth_transactions.go index 4dd8040ba..e94215d60 100644 --- a/chain/types/ethtypes/eth_transactions.go +++ b/chain/types/ethtypes/eth_transactions.go @@ -111,6 +111,10 @@ func EthTxArgsFromMessage(msg *types.Message) (EthTxArgs, error) { if paramsReader.Len() != 0 { return EthTxArgs{}, xerrors.Errorf("extra data found in params") } + if len(params) == 0 { + // Otherwise, we don't get a guaranteed round-trip. + return EthTxArgs{}, xerrors.Errorf("cannot invoke contracts with empty parameters from an eth-account") + } } }