Skip to content

Commit

Permalink
refactor(imagor): fan-out reader sequence
Browse files Browse the repository at this point in the history
  • Loading branch information
cshum committed Nov 11, 2022
1 parent b2d8b15 commit 962ffee
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions blob.go
Original file line number Diff line number Diff line change
Expand Up @@ -190,14 +190,6 @@ func (b *Blob) init() {
return
}
b.size = size
if _, ok := reader.(io.ReadSeekCloser); ok {
// construct seeker factory if source supports seek
newReader := b.newReader
b.newReadSeeker = func() (io.ReadSeekCloser, int64, error) {
r, size, err := newReader()
return r.(io.ReadSeekCloser), size, err
}
}
if b.fanout && size > 0 && size < maxMemorySize && err == nil {
// use fan-out reader if buf size known and within memory size
// otherwise create new readers
Expand All @@ -208,6 +200,14 @@ func (b *Blob) init() {
reader = fanout.NewReader()
} else {
b.fanout = false
if _, ok := reader.(io.ReadSeekCloser); ok {
// construct seeker factory if source supports seek
newReader := b.newReader
b.newReadSeeker = func() (io.ReadSeekCloser, int64, error) {
r, size, err := newReader()
return r.(io.ReadSeekCloser), size, err
}
}
}
// sniff first 512 bytes for type sniffing
b.sniffBuf = make([]byte, 512)
Expand Down

0 comments on commit 962ffee

Please sign in to comment.