mirror of
https://github.com/minio/minio.git
synced 2025-01-11 15:03:22 -05:00
close channel upon error in Walk()'er (#9042)
This commit is contained in:
parent
deb3911f5e
commit
6f66f1a910
@ -320,6 +320,8 @@ func listObjectsNonSlash(ctx context.Context, bucket, prefix, marker, delimiter
|
|||||||
// then Walk() stops the walker.
|
// then Walk() stops the walker.
|
||||||
func fsWalk(ctx context.Context, obj ObjectLayer, bucket, prefix string, listDir ListDirFunc, results chan<- ObjectInfo, getObjInfo func(context.Context, string, string) (ObjectInfo, error), getObjectInfoDirs ...func(context.Context, string, string) (ObjectInfo, error)) error {
|
func fsWalk(ctx context.Context, obj ObjectLayer, bucket, prefix string, listDir ListDirFunc, results chan<- ObjectInfo, getObjInfo func(context.Context, string, string) (ObjectInfo, error), getObjectInfoDirs ...func(context.Context, string, string) (ObjectInfo, error)) error {
|
||||||
if err := checkListObjsArgs(ctx, bucket, prefix, "", obj); err != nil {
|
if err := checkListObjsArgs(ctx, bucket, prefix, "", obj); err != nil {
|
||||||
|
// Upon error close the channel.
|
||||||
|
close(results)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1617,6 +1617,8 @@ func (s *xlSets) ListBucketsHeal(ctx context.Context) ([]BucketInfo, error) {
|
|||||||
// then Walk() stops the walker.
|
// then Walk() stops the walker.
|
||||||
func (s *xlSets) Walk(ctx context.Context, bucket, prefix string, results chan<- ObjectInfo) error {
|
func (s *xlSets) Walk(ctx context.Context, bucket, prefix string, results chan<- ObjectInfo) error {
|
||||||
if err := checkListObjsArgs(ctx, bucket, prefix, "", s); err != nil {
|
if err := checkListObjsArgs(ctx, bucket, prefix, "", s); err != nil {
|
||||||
|
// Upon error close the channel.
|
||||||
|
close(results)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1291,6 +1291,8 @@ func (z *xlZones) HealBucket(ctx context.Context, bucket string, dryRun, remove
|
|||||||
// then Walk() stops the walker.
|
// then Walk() stops the walker.
|
||||||
func (z *xlZones) Walk(ctx context.Context, bucket, prefix string, results chan<- ObjectInfo) error {
|
func (z *xlZones) Walk(ctx context.Context, bucket, prefix string, results chan<- ObjectInfo) error {
|
||||||
if err := checkListObjsArgs(ctx, bucket, prefix, "", z); err != nil {
|
if err := checkListObjsArgs(ctx, bucket, prefix, "", z); err != nil {
|
||||||
|
// Upon error close the channel.
|
||||||
|
close(results)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user