diff --git a/CHANGELOG.md b/CHANGELOG.md index 9d7328ca8f50..61cfdff885de 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## 0.34.7 + +### Bug Fixes + +#### SDK + +* Fix gas consumption bug in `Undelegate` preventing the ability to sync from +genesis. + ## 0.34.6 ### Bug Fixes diff --git a/x/staking/keeper/delegation.go b/x/staking/keeper/delegation.go index 9559398923db..4a4db00ad6ed 100644 --- a/x/staking/keeper/delegation.go +++ b/x/staking/keeper/delegation.go @@ -597,10 +597,10 @@ func (k Keeper) Undelegate( return completionTime, err } + balance := sdk.NewCoin(k.BondDenom(ctx), returnAmount) + // no need to create the ubd object just complete now if completeNow { - balance := sdk.NewCoin(k.BondDenom(ctx), returnAmount) - // track undelegation only when remaining or truncated shares are non-zero if !balance.IsZero() { if _, err := k.bankKeeper.UndelegateCoins(ctx, delAddr, sdk.Coins{balance}); err != nil {