提交 f66ca2ff 作者: Kevin Atkinson

gc: continue to use cmds.ChannelMarshaler

License: MIT
Signed-off-by: 's avatarKevin Atkinson <k@kevina.org>
上级 c83bbafb
...@@ -25,6 +25,9 @@ func (cr *ChannelMarshaler) Read(p []byte) (int, error) { ...@@ -25,6 +25,9 @@ func (cr *ChannelMarshaler) Read(p []byte) (int, error) {
if err != nil { if err != nil {
return 0, err return 0, err
} }
if r == nil {
return 0, nil
}
cr.reader = r cr.reader = r
} }
......
...@@ -110,7 +110,7 @@ order to reclaim hard disk space. ...@@ -110,7 +110,7 @@ order to reclaim hard disk space.
return nil, err return nil, err
} }
for v := range outChan { marshal := func(v interface{}) (io.Reader, error) {
obj, ok := v.(*GcResult) obj, ok := v.(*GcResult)
if !ok { if !ok {
return nil, u.ErrCast() return nil, u.ErrCast()
...@@ -118,21 +118,21 @@ order to reclaim hard disk space. ...@@ -118,21 +118,21 @@ order to reclaim hard disk space.
if obj.Error != "" { if obj.Error != "" {
fmt.Fprintf(res.Stderr(), "Error: %s\n", obj.Error) fmt.Fprintf(res.Stderr(), "Error: %s\n", obj.Error)
continue return nil, nil
} }
if quiet { if quiet {
fmt.Fprintf(res.Stdout(), "%s\n", obj.Key.String()) return bytes.NewBufferString(obj.Key.String() + "\n"), nil
} else { } else {
fmt.Fprintf(res.Stdout(), "removed %s\n", obj.Key.String()) return bytes.NewBufferString(fmt.Sprintf("removed %s\n", obj.Key)), nil
} }
} }
if res.Error() != nil { return &cmds.ChannelMarshaler{
return nil, res.Error() Channel: outChan,
} Marshaler: marshal,
Res: res,
return nil, nil }, nil
}, },
}, },
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论