mirror of
https://github.com/restic/restic.git
synced 2025-08-12 11:37:40 +00:00
restore: Use proper context while loading snapshot
This commit is contained in:
@@ -24,7 +24,7 @@ type Restorer struct {
|
||||
var restorerAbortOnAllErrors = func(location string, err error) error { return err }
|
||||
|
||||
// NewRestorer creates a restorer preloaded with the content from the snapshot id.
|
||||
func NewRestorer(repo restic.Repository, id restic.ID) (*Restorer, error) {
|
||||
func NewRestorer(ctx context.Context, repo restic.Repository, id restic.ID) (*Restorer, error) {
|
||||
r := &Restorer{
|
||||
repo: repo,
|
||||
Error: restorerAbortOnAllErrors,
|
||||
@@ -33,7 +33,7 @@ func NewRestorer(repo restic.Repository, id restic.ID) (*Restorer, error) {
|
||||
|
||||
var err error
|
||||
|
||||
r.sn, err = restic.LoadSnapshot(context.TODO(), repo, id)
|
||||
r.sn, err = restic.LoadSnapshot(ctx, repo, id)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@@ -316,7 +316,7 @@ func TestRestorer(t *testing.T) {
|
||||
_, id := saveSnapshot(t, repo, test.Snapshot)
|
||||
t.Logf("snapshot saved as %v", id.Str())
|
||||
|
||||
res, err := NewRestorer(repo, id)
|
||||
res, err := NewRestorer(context.TODO(), repo, id)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@@ -434,7 +434,7 @@ func TestRestorerRelative(t *testing.T) {
|
||||
_, id := saveSnapshot(t, repo, test.Snapshot)
|
||||
t.Logf("snapshot saved as %v", id.Str())
|
||||
|
||||
res, err := NewRestorer(repo, id)
|
||||
res, err := NewRestorer(context.TODO(), repo, id)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@@ -665,7 +665,7 @@ func TestRestorerTraverseTree(t *testing.T) {
|
||||
defer cleanup()
|
||||
sn, id := saveSnapshot(t, repo, test.Snapshot)
|
||||
|
||||
res, err := NewRestorer(repo, id)
|
||||
res, err := NewRestorer(context.TODO(), repo, id)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
@@ -29,7 +29,7 @@ func TestRestorerRestoreEmptyHardlinkedFileds(t *testing.T) {
|
||||
},
|
||||
})
|
||||
|
||||
res, err := NewRestorer(repo, id)
|
||||
res, err := NewRestorer(context.TODO(), repo, id)
|
||||
rtest.OK(t, err)
|
||||
|
||||
res.SelectFilter = func(item string, dstpath string, node *restic.Node) (selectedForRestore bool, childMayBeSelected bool) {
|
||||
|
Reference in New Issue
Block a user