diff --git a/core/commands/filestore.go b/core/commands/filestore.go index 9d78a8df1..709eb7677 100644 --- a/core/commands/filestore.go +++ b/core/commands/filestore.go @@ -218,11 +218,18 @@ var dupsFileStore = &oldCmds.Command{ for cid := range ch { have, err := fs.MainBlockstore().Has(cid) if err != nil { - out <- &RefWrapper{Err: err.Error()} + select { + case out <- &RefWrapper{Err: err.Error()}: + case <-req.Context().Done(): + } return } if have { - out <- &RefWrapper{Ref: cid.String()} + select { + case out <- &RefWrapper{Ref: cid.String()}: + case <-req.Context().Done(): + return + } } } }()