Skip to content

Commit

Permalink
call SetSequenceFee during keeper transfer execution flow.
Browse files Browse the repository at this point in the history
  • Loading branch information
RustNinja committed Apr 25, 2024
1 parent b99fd26 commit fd48041
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions custom/ibc-transfer/keeper/keeper.go
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ func NewKeeper(
func (k Keeper) Transfer(goCtx context.Context, msg *types.MsgTransfer) (*types.MsgTransferResponse, error) {
ctx := sdk.UnwrapSDKContext(goCtx)
params := k.IbcTransfermiddleware.GetParams(ctx)
charge_coin := sdk.NewCoin("", sdk.ZeroInt())
if params.ChannelFees != nil && len(params.ChannelFees) > 0 {
channelFee := findChannelParams(params.ChannelFees, msg.SourceChannel)
if channelFee != nil {
Expand Down Expand Up @@ -103,7 +104,8 @@ func (k Keeper) Transfer(goCtx context.Context, msg *types.MsgTransfer) (*types.
return nil, err
}

send_err := k.bank.SendCoins(ctx, msgSender, feeAddress, sdk.NewCoins(sdk.NewCoin(msg.Token.Denom, charge)))
charge_coin = sdk.NewCoin(msg.Token.Denom, charge)
send_err := k.bank.SendCoins(ctx, msgSender, feeAddress, sdk.NewCoins(charge_coin))
if send_err != nil {
return nil, send_err
}
Expand All @@ -114,5 +116,9 @@ func (k Keeper) Transfer(goCtx context.Context, msg *types.MsgTransfer) (*types.
msg.Token.Amount = newAmount
}
}
return k.Keeper.Transfer(goCtx, msg)
ret, err := k.Transfer(goCtx, msg)
if err != nil || !charge_coin.IsZero() {
k.IbcTransfermiddleware.SetSequenceFee(ctx, ret.Sequence, charge_coin)
}
return ret, err
}

0 comments on commit fd48041

Please sign in to comment.