Handle canceled context in restore --verify properly

This commit is contained in:
greatroar
2020-03-16 10:05:59 +01:00
committed by Michael Eischer
parent d4225ec803
commit d357744104
2 changed files with 45 additions and 4 deletions

View File

@@ -99,10 +99,13 @@ func (res *Restorer) traverseTree(ctx context.Context, target, location string,
}
sanitizeError := func(err error) error {
if err != nil {
err = res.Error(nodeLocation, err)
switch err {
case nil, context.Canceled, context.DeadlineExceeded:
// Context errors are permanent.
return err
default:
return res.Error(nodeLocation, err)
}
return err
}
if node.Type == "dir" {
@@ -364,7 +367,7 @@ func (res *Restorer) VerifyFiles(ctx context.Context, dst string) (int, error) {
}
atomic.AddUint64(&nchecked, 1)
}
return
return err
})
}