fix: snapshot commands panic if snapshot don't exists (#16138)
This commit is contained in:
parent
14af232606
commit
92247cb0e9
@ -223,6 +223,7 @@ Ref: https://keepachangelog.com/en/1.0.0/
|
||||
* (x/capability) [#15030](https://github.com/cosmos/cosmos-sdk/pull/15030) Prevent `x/capability` from consuming `GasMeter` gas during `InitMemStore`
|
||||
* (types/coin) [#14739](https://github.com/cosmos/cosmos-sdk/pull/14739) Deprecate the method `Coin.IsEqual` in favour of `Coin.Equal`. The difference between the two methods is that the first one results in a panic when denoms are not equal. This panic lead to unexpected behavior
|
||||
* (x/crypto) [#15258](https://github.com/cosmos/cosmos-sdk/pull/15258) Write keyhash file with permissions 0600 instead of 0555.
|
||||
* (cli) [#16138](https://github.com/cosmos/cosmos-sdk/pull/16138) Fix snapshot commands panic if snapshot don't exists.
|
||||
|
||||
### Deprecated
|
||||
|
||||
|
||||
@ -3,6 +3,7 @@ package snapshot
|
||||
import (
|
||||
"archive/tar"
|
||||
"compress/gzip"
|
||||
"errors"
|
||||
"fmt"
|
||||
"io"
|
||||
"os"
|
||||
@ -48,6 +49,10 @@ func DumpArchiveCmd() *cobra.Command {
|
||||
return err
|
||||
}
|
||||
|
||||
if snapshot == nil {
|
||||
return errors.New("snapshot don't exists")
|
||||
}
|
||||
|
||||
bz, err := snapshot.Marshal()
|
||||
if err != nil {
|
||||
return err
|
||||
|
||||
@ -425,6 +425,10 @@ func (m *Manager) RestoreLocalSnapshot(height uint64, format uint32) error {
|
||||
return err
|
||||
}
|
||||
|
||||
if snapshot == nil {
|
||||
return fmt.Errorf("snapshot don't exists, height: %d, format: %d", height, format)
|
||||
}
|
||||
|
||||
m.mtx.Lock()
|
||||
defer m.mtx.Unlock()
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user