I believe it's a little more idiomatic to do:

```go
if v, ok := c.ReadSeeker.(io.Closer); ok { 
  v.Close()
}
```