mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Avoid divisions by 0 in the ASF demuxer if packet_size is not valid.
Originally committed as revision 19330 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
0410ee8f86
commit
68a10b40bc
@ -595,6 +595,9 @@ static int ff_asf_get_packet(AVFormatContext *s, ByteIOContext *pb)
|
||||
int rsize = 8;
|
||||
int c, d, e, off;
|
||||
|
||||
// if we do not know packet size, allow skipping up to 32 kB
|
||||
off= 32768;
|
||||
if (s->packet_size > 0)
|
||||
off= (url_ftell(pb) - s->data_offset) % s->packet_size + 3;
|
||||
|
||||
c=d=e=-1;
|
||||
@ -989,6 +992,7 @@ static int64_t asf_read_pts(AVFormatContext *s, int stream_index, int64_t *ppos,
|
||||
start_pos[i]= pos;
|
||||
}
|
||||
|
||||
if (s->packet_size > 0)
|
||||
pos= (pos+s->packet_size-1-s->data_offset)/s->packet_size*s->packet_size+ s->data_offset;
|
||||
*ppos= pos;
|
||||
url_fseek(s->pb, pos, SEEK_SET);
|
||||
|
Loading…
Reference in New Issue
Block a user