diff --git a/x/dex/keeper/utils/wasm.go b/x/dex/keeper/utils/wasm.go index 0ca30fea20..a7fa590320 100644 --- a/x/dex/keeper/utils/wasm.go +++ b/x/dex/keeper/utils/wasm.go @@ -102,16 +102,16 @@ func CallContractSudo(sdkCtx sdk.Context, k *keeper.Keeper, contractAddr string, return []byte{}, err } msgType := getMsgType(msg) - data, gasUsed, err := sudo(sdkCtx, k, contractAddress, wasmMsg, msgType) - if err != nil { + data, gasUsed, suderr := sudo(sdkCtx, k, contractAddress, wasmMsg, msgType) + if err := k.ChargeRentForGas(sdkCtx, contractAddr, gasUsed, gasAllowance); err != nil { metrics.IncrementSudoFailCount(msgType) sdkCtx.Logger().Error(err.Error()) return []byte{}, err } - if err := k.ChargeRentForGas(sdkCtx, contractAddr, gasUsed, gasAllowance); err != nil { + if suderr != nil { metrics.IncrementSudoFailCount(msgType) - sdkCtx.Logger().Error(err.Error()) - return []byte{}, err + sdkCtx.Logger().Error(suderr.Error()) + return []byte{}, suderr } return data, nil }