Module: libav Branch: master Commit: b5c1c16247ab7d166c84eaf4564e49a1535fdaaf
Author: Alexandra Hájková <[email protected]> Committer: Anton Khirnov <[email protected]> Date: Thu Jul 23 12:33:37 2015 +0200 asfdec: do not align Data Object when Broadcast Flag is set its size is invalid in this case Signed-off-by: Anton Khirnov <[email protected]> --- libavformat/asfdec.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavformat/asfdec.c b/libavformat/asfdec.c index 9c746af..37d91e0 100644 --- a/libavformat/asfdec.c +++ b/libavformat/asfdec.c @@ -928,7 +928,7 @@ static int asf_read_data(AVFormatContext *s, const GUIDParseTable *g) size, asf->nb_packets); avio_skip(pb, 2); // skip reserved field asf->first_packet_offset = avio_tell(pb); - if (pb->seekable) + if (pb->seekable && !(asf->b_flags & ASF_FLAG_BROADCAST)) align_position(pb, asf->offset, asf->data_size); return 0; @@ -1676,7 +1676,7 @@ static int asf_read_header(AVFormatContext *s) size = avio_rl64(pb); align_position(pb, asf->offset, size); } - if (asf->data_reached && !pb->seekable) + if (asf->data_reached && (!pb->seekable || (asf->b_flags & ASF_FLAG_BROADCAST))) break; } _______________________________________________ libav-commits mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-commits
