diff --git a/x/auth/tx/builder.go b/x/auth/tx/builder.go index 944256610c..506412b23f 100644 --- a/x/auth/tx/builder.go +++ b/x/auth/tx/builder.go @@ -32,7 +32,9 @@ func newBuilder(addressCodec address.Codec, decoder *decode.Decoder, codec codec return &builder{addressCodec: addressCodec, decoder: decoder, codec: codec} } -func newBuilderFromDecodedTx(addrCodec address.Codec, decoder *decode.Decoder, codec codec.BinaryCodec, decoded *gogoTxWrapper) (*builder, error) { +func newBuilderFromDecodedTx( + addrCodec address.Codec, decoder *decode.Decoder, codec codec.BinaryCodec, decoded *gogoTxWrapper, +) (*builder, error) { signatures := make([][]byte, len(decoded.Tx.Signatures)) copy(signatures, decoded.Tx.Signatures) @@ -56,7 +58,7 @@ func newBuilderFromDecodedTx(addrCodec address.Codec, decoder *decode.Decoder, c addressCodec: addrCodec, decoder: decoder, codec: codec, - msgs: decoded.msgs, + msgs: decoded.Messages, timeoutHeight: decoded.GetTimeoutHeight(), granter: decoded.FeeGranter(), payer: payer, diff --git a/x/auth/tx/gogotx.go b/x/auth/tx/gogotx.go index 2aebf06635..da129af504 100644 --- a/x/auth/tx/gogotx.go +++ b/x/auth/tx/gogotx.go @@ -27,14 +27,13 @@ import ( "github.com/cosmos/cosmos-sdk/types/tx/signing" ) -func newWrapperFromDecodedTx(addrCodec address.Codec, cdc codec.BinaryCodec, decodedTx *decode.DecodedTx) (*gogoTxWrapper, error) { - // set msgsv1 - msgs, err := decodeMsgsV1(cdc, decodedTx.Tx.Body.Messages) - if err != nil { - return nil, fmt.Errorf("unable to convert messagev2 to messagev1: %w", err) - } - // set fees - fees := make(sdk.Coins, len(decodedTx.Tx.AuthInfo.Fee.Amount)) +func newWrapperFromDecodedTx( + addrCodec address.Codec, cdc codec.BinaryCodec, decodedTx *decode.DecodedTx, +) (*gogoTxWrapper, error) { + var ( + fees = make(sdk.Coins, len(decodedTx.Tx.AuthInfo.Fee.Amount)) + err error + ) for i, fee := range decodedTx.Tx.AuthInfo.Fee.Amount { amtInt, ok := math.NewIntFromString(fee.Amount) if !ok { @@ -73,7 +72,7 @@ func newWrapperFromDecodedTx(addrCodec address.Codec, cdc codec.BinaryCodec, dec } // reflectMsgs - reflectMsgs := make([]protoreflect.Message, len(msgs)) + reflectMsgs := make([]protoreflect.Message, len(decodedTx.DynamicMessages)) for i, msg := range decodedTx.DynamicMessages { reflectMsgs[i] = msg.ProtoReflect() } @@ -82,7 +81,6 @@ func newWrapperFromDecodedTx(addrCodec address.Codec, cdc codec.BinaryCodec, dec DecodedTx: decodedTx, cdc: cdc, reflectMsgs: reflectMsgs, - msgs: msgs, fees: fees, feePayer: feePayer, feeGranter: feeGranter, @@ -96,7 +94,6 @@ type gogoTxWrapper struct { cdc codec.BinaryCodec - msgs []proto.Message reflectMsgs []protoreflect.Message fees sdk.Coins feePayer []byte @@ -119,10 +116,7 @@ type ExtensionOptionsTxBuilder interface { } func (w *gogoTxWrapper) GetMsgs() []sdk.Msg { - if w.msgs == nil { - panic("fill in msgs") - } - return w.msgs + return w.Messages } func (w *gogoTxWrapper) GetReflectMessages() ([]protoreflect.Message, error) { @@ -280,20 +274,6 @@ func intoAnyV1(v2s []*anypb.Any) []*codectypes.Any { return v1s } -// decodeMsgsV1 will decode the given messages into -func decodeMsgsV1(cdc codec.BinaryCodec, anyPBs []*anypb.Any) ([]proto.Message, error) { - v1s := make([]proto.Message, len(anyPBs)) - - for i, anyPB := range anyPBs { - v1, err := decodeFromAny(cdc, anyPB) - if err != nil { - return nil, err - } - v1s[i] = v1 - } - return v1s, nil -} - func decodeFromAny(cdc codec.BinaryCodec, anyPB *anypb.Any) (proto.Message, error) { messageName := anyPB.TypeUrl if i := strings.LastIndexByte(anyPB.TypeUrl, '/'); i >= 0 {