rclone/vendor/storj.io/common/errs2/ignore.go
Caleb Case e7bd392a69 backend/tardigrade: Upgrade to uplink v1.0.6
This fixes an important bug with listing that affects users with more
than 500 objects in a listing operation.
2020-05-29 18:00:08 +01:00

28 lines
572 B
Go

// Copyright (C) 2019 Storj Labs, Inc.
// See LICENSE for copying information.
package errs2
import (
"context"
"github.com/zeebo/errs"
"storj.io/common/rpc/rpcstatus"
)
// IsCanceled returns true, when the error is a cancellation.
func IsCanceled(err error) bool {
return errs.IsFunc(err, func(err error) bool {
return err == context.Canceled ||
rpcstatus.Code(err) == rpcstatus.Canceled
})
}
// IgnoreCanceled returns nil, when the operation was about canceling.
func IgnoreCanceled(err error) error {
if IsCanceled(err) {
return nil
}
return err
}