avformat/sauce: Check avio_size() for failure

Fixes: CID1604592 Overflowed constant

Sponsored-by: Sovereign Tech Fund
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
Michael Niedermayer 2024-07-11 20:49:08 +02:00
parent 3e305a0e70
commit 759aae590c
No known key found for this signature in database
GPG Key ID: B18E8928B3948D64

View File

@ -34,7 +34,12 @@ int ff_sauce_read(AVFormatContext *avctx, uint64_t *fsize, int *got_width, int g
AVIOContext *pb = avctx->pb;
char buf[36];
int datatype, filetype, t1, t2, nb_comments;
uint64_t start_pos = avio_size(pb) - 128;
int64_t start_pos = avio_size(pb);
if (start_pos < 128)
return AVERROR_INVALIDDATA;
start_pos -= 128;
avio_seek(pb, start_pos, SEEK_SET);
if (avio_read(pb, buf, 7) != 7)