diff --git a/internal/checker/checker_test.go b/internal/checker/checker_test.go index 5fc82eed0..ee18f893a 100644 --- a/internal/checker/checker_test.go +++ b/internal/checker/checker_test.go @@ -333,7 +333,7 @@ type errorOnceBackend struct { } func (b *errorOnceBackend) Load(ctx context.Context, h backend.Handle, length int, offset int64, consumer func(rd io.Reader) error) error { - _, isRetry := b.m.Swap(h, struct{}{}) + _, isRetry := b.m.LoadOrStore(h, struct{}{}) return b.Backend.Load(ctx, h, length, offset, func(rd io.Reader) error { if !isRetry && h.Type != restic.ConfigFile { return consumer(errorReadCloser{rd}) diff --git a/internal/repository/repository_test.go b/internal/repository/repository_test.go index 6f67e2c5e..67622fdf8 100644 --- a/internal/repository/repository_test.go +++ b/internal/repository/repository_test.go @@ -296,8 +296,8 @@ func (be *damageOnceBackend) Load(ctx context.Context, h backend.Handle, length } h.IsMetadata = false - _, retry := be.m.Swap(h, true) - if !retry { + _, isRetry := be.m.LoadOrStore(h, true) + if !isRetry { // return broken data on the first try offset++ }