diff options
Diffstat (limited to 'vendor/github.com/minio/minio-go/v7/api-list.go')
| -rw-r--r-- | vendor/github.com/minio/minio-go/v7/api-list.go | 49 |
1 files changed, 27 insertions, 22 deletions
diff --git a/vendor/github.com/minio/minio-go/v7/api-list.go b/vendor/github.com/minio/minio-go/v7/api-list.go index 1af0fadbf..5bf67a666 100644 --- a/vendor/github.com/minio/minio-go/v7/api-list.go +++ b/vendor/github.com/minio/minio-go/v7/api-list.go @@ -285,7 +285,7 @@ func (c *Client) listObjectsV2Query(ctx context.Context, bucketName, objectPrefi // sure proper responses are received. if listBucketResult.IsTruncated && listBucketResult.NextContinuationToken == "" { return listBucketResult, ErrorResponse{ - Code: "NotImplemented", + Code: NotImplemented, Message: "Truncated response should have continuation token set", } } @@ -419,19 +419,25 @@ func (c *Client) listObjectVersions(ctx context.Context, bucketName string, opts } for _, version := range vers { info := ObjectInfo{ - ETag: trimEtag(version.ETag), - Key: version.Key, - LastModified: version.LastModified.Truncate(time.Millisecond), - Size: version.Size, - Owner: version.Owner, - StorageClass: version.StorageClass, - IsLatest: version.IsLatest, - VersionID: version.VersionID, - IsDeleteMarker: version.isDeleteMarker, - UserTags: version.UserTags, - UserMetadata: version.UserMetadata, - Internal: version.Internal, - NumVersions: numVersions, + ETag: trimEtag(version.ETag), + Key: version.Key, + LastModified: version.LastModified.Truncate(time.Millisecond), + Size: version.Size, + Owner: version.Owner, + StorageClass: version.StorageClass, + IsLatest: version.IsLatest, + VersionID: version.VersionID, + IsDeleteMarker: version.isDeleteMarker, + UserTags: version.UserTags, + UserMetadata: version.UserMetadata, + Internal: version.Internal, + NumVersions: numVersions, + ChecksumMode: version.ChecksumType, + ChecksumCRC32: version.ChecksumCRC32, + ChecksumCRC32C: version.ChecksumCRC32C, + ChecksumSHA1: version.ChecksumSHA1, + ChecksumSHA256: version.ChecksumSHA256, + ChecksumCRC64NVME: version.ChecksumCRC64NVME, } if !yield(info) { return false @@ -753,13 +759,9 @@ func (c *Client) ListObjects(ctx context.Context, bucketName string, opts ListOb objectStatCh := make(chan ObjectInfo, 1) go func() { defer close(objectStatCh) - send := func(obj ObjectInfo) bool { - select { - case <-ctx.Done(): - return false - case objectStatCh <- obj: - return true - } + if contextCanceled(ctx) { + objectStatCh <- ObjectInfo{Err: ctx.Err()} + return } var objIter iter.Seq[ObjectInfo] @@ -777,8 +779,11 @@ func (c *Client) ListObjects(ctx context.Context, bucketName string, opts ListOb } } for obj := range objIter { - if !send(obj) { + select { + case <-ctx.Done(): + objectStatCh <- ObjectInfo{Err: ctx.Err()} return + case objectStatCh <- obj: } } }() |
