Delete unmodified versions
This commit is contained in:
parent
b5dc9e3db7
commit
7bcb0cfc6a
@ -74,8 +74,10 @@ func (db *database) load(dir string) error {
|
||||
}
|
||||
|
||||
func (db *database) save() error {
|
||||
lastVer := db.lastVersion()
|
||||
|
||||
for _, ver := range db.vers {
|
||||
if err := ver.finalize(); err != nil {
|
||||
if err := ver.finalize(ver == lastVer); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
10
version.go
10
version.go
@ -146,8 +146,16 @@ func (v *version) rebasePath(paths ...string) string {
|
||||
return filepath.Join(combined...)
|
||||
}
|
||||
|
||||
func (v *version) finalize() error {
|
||||
func (v *version) finalize(last bool) error {
|
||||
if v.meta.dirty {
|
||||
return v.meta.save()
|
||||
} else if last {
|
||||
if err := os.RemoveAll(v.base); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (v *version) Root() (fs.Node, error) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user