func (m *MessageFile) Read(p []byte) (n int, err error) {
    if m.done {
        return m.buffer.Read(p)
    }