diff --git a/wordsmith/utility/defclose.go b/wordsmith/utility/defclose.go index 6aafbf47..77e8e44e 100644 --- a/wordsmith/utility/defclose.go +++ b/wordsmith/utility/defclose.go @@ -4,8 +4,12 @@ import "io" import "github.com/documize/community/wordsmith/log" // Close is a convenience function to close an io.Closer, usually in a defer. -func Close(f io.Closer) { - if f != nil && f != io.Closer(nil) { - log.IfErr(f.Close()) +func Close(f interface{}) { + if f != nil { + if ff, ok := f.(io.Closer); ok { + if ff != io.Closer(nil) { + log.IfErr(ff.Close()) + } + } } }