mirror of https://github.com/restic/restic.git
22 lines
444 B
Go
22 lines
444 B
Go
|
package backend
|
||
|
|
||
|
import "io"
|
||
|
|
||
|
// ReadCloser wraps a reader and adds a noop Close method if rd does not implement io.Closer.
|
||
|
func ReadCloser(rd io.Reader) io.ReadCloser {
|
||
|
return readCloser{rd}
|
||
|
}
|
||
|
|
||
|
// readCloser wraps a reader and adds a noop Close method if rd does not implement io.Closer.
|
||
|
type readCloser struct {
|
||
|
io.Reader
|
||
|
}
|
||
|
|
||
|
func (rd readCloser) Close() error {
|
||
|
if r, ok := rd.Reader.(io.Closer); ok {
|
||
|
return r.Close()
|
||
|
}
|
||
|
|
||
|
return nil
|
||
|
}
|