summaryrefslogtreecommitdiff
path: root/libavformat/asfdec_o.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-07-28 00:13:51 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2015-07-28 00:13:54 +0200
commite1296b5fa4e54941dcc68136022d71dfff01e214 (patch)
treea379a952a8f70763c5b339167aef685e0eb4535f /libavformat/asfdec_o.c
parent4ecc9a2f31bfafd5438558311f858ad4c7138214 (diff)
parentb5c1c16247ab7d166c84eaf4564e49a1535fdaaf (diff)
Merge commit 'b5c1c16247ab7d166c84eaf4564e49a1535fdaaf'
* commit 'b5c1c16247ab7d166c84eaf4564e49a1535fdaaf': asfdec: do not align Data Object when Broadcast Flag is set Merged-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavformat/asfdec_o.c')
-rw-r--r--libavformat/asfdec_o.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavformat/asfdec_o.c b/libavformat/asfdec_o.c
index 91c6e8612f..ab3c7fce07 100644
--- a/libavformat/asfdec_o.c
+++ b/libavformat/asfdec_o.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;
}