fix(imagorvideo): close reader on ReadSeeker size 0

This commit is contained in:
Adrian Shum 2022-09-30 08:47:37 +08:00 committed by GitHub
parent 65aaf7d702
commit 17b9baa5d6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -94,7 +94,13 @@ func (p *Processor) Process(ctx context.Context, in *imagor.Blob, params imagorp
default:
}
if reader == nil {
if reader, size, err = in.NewReadSeeker(); err != nil || size <= 0 {
reader, size, err = in.NewReadSeeker()
if err == nil && size <= 0 {
_ = reader.Close()
reader = nil
}
}
if reader == nil {
// write to temp file if read seeker not available
if reader, _, err = in.NewReader(); err != nil {
return
@ -119,7 +125,6 @@ func (p *Processor) Process(ctx context.Context, in *imagor.Blob, params imagorp
return
}
}
}
av, err := ffmpeg.LoadAVContext(ctx, reader, size)
if err != nil {
return