From c7209a56cb653031c5e124431880f7212672f084 Mon Sep 17 00:00:00 2001 From: Damian Nolan Date: Mon, 11 Apr 2022 10:39:52 +0200 Subject: [PATCH] chore: ics29 cleanup, addressing nits (#1236) --- modules/apps/29-fee/keeper/escrow.go | 15 +++++++++------ modules/apps/29-fee/types/codec.go | 8 +++++++- 2 files changed, 16 insertions(+), 7 deletions(-) diff --git a/modules/apps/29-fee/keeper/escrow.go b/modules/apps/29-fee/keeper/escrow.go index 525ce258d05..40aad06e3be 100644 --- a/modules/apps/29-fee/keeper/escrow.go +++ b/modules/apps/29-fee/keeper/escrow.go @@ -16,22 +16,25 @@ func (k Keeper) EscrowPacketFee(ctx sdk.Context, packetID channeltypes.PacketId, // users may not escrow fees on this channel. Must send packets without a fee message return sdkerrors.Wrap(types.ErrFeeNotEnabled, "cannot escrow fee for packet") } - // check if the refund account exists - refundAcc, err := sdk.AccAddressFromBech32(packetFee.RefundAddress) + + // check if the refund address is valid + refundAddr, err := sdk.AccAddressFromBech32(packetFee.RefundAddress) if err != nil { return err } - hasRefundAcc := k.authKeeper.GetAccount(ctx, refundAcc) - if hasRefundAcc == nil { - return sdkerrors.Wrapf(types.ErrRefundAccNotFound, "account with address: %s not found", refundAcc) + refundAcc := k.authKeeper.GetAccount(ctx, refundAddr) + if refundAcc == nil { + return sdkerrors.Wrapf(types.ErrRefundAccNotFound, "account with address: %s not found", packetFee.RefundAddress) } coins := packetFee.Fee.Total() - if err := k.bankKeeper.SendCoinsFromAccountToModule(ctx, refundAcc, types.ModuleName, coins); err != nil { + if err := k.bankKeeper.SendCoinsFromAccountToModule(ctx, refundAddr, types.ModuleName, coins); err != nil { return err } + // multiple fees may be escrowed for a single packet, firstly create a slice containing the new fee + // retrieve any previous fees stored in escrow for the packet and append them to the list fees := []types.PacketFee{packetFee} if feesInEscrow, found := k.GetFeesInEscrow(ctx, packetID); found { fees = append(fees, feesInEscrow.PacketFees...) diff --git a/modules/apps/29-fee/types/codec.go b/modules/apps/29-fee/types/codec.go index 846716d740f..871f148b043 100644 --- a/modules/apps/29-fee/types/codec.go +++ b/modules/apps/29-fee/types/codec.go @@ -18,7 +18,13 @@ func RegisterLegacyAminoCodec(cdc *codec.LegacyAmino) { // RegisterInterfaces register the 29-fee module interfaces to protobuf // Any. func RegisterInterfaces(registry codectypes.InterfaceRegistry) { - registry.RegisterImplementations((*sdk.Msg)(nil), &MsgRegisterCounterpartyAddress{}, &MsgPayPacketFee{}, &MsgPayPacketFeeAsync{}) + registry.RegisterImplementations( + (*sdk.Msg)(nil), + &MsgRegisterCounterpartyAddress{}, + &MsgPayPacketFee{}, + &MsgPayPacketFeeAsync{}, + ) + msgservice.RegisterMsgServiceDesc(registry, &_Msg_serviceDesc) }