diff --git a/parse.go b/parse.go index 90d8583..dcca50a 100644 --- a/parse.go +++ b/parse.go @@ -67,7 +67,10 @@ func (t *Tag) parseAllFrames() error { } framesSize := t.originalSize - tagHeaderSize - fileReader := io.LimitReader(t.file, framesSize) + fileReader := lrpool.Get() + defer lrpool.Put(fileReader) + fileReader.R = t.file + fileReader.N = framesSize for { id, frame, err := parseFrame(fileReader)