summaryrefslogtreecommitdiff
path: root/libavformat/asfdec_o.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-07-27 12:27:32 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2015-07-27 12:27:35 +0200
commit90696ef368819a1a0576c0c96ce4349dd726dd4f (patch)
tree73521a3816930c3385f250f4e0aed27affaf36e9 /libavformat/asfdec_o.c
parentb940145c67dbb2114bc231a36a4549de315504a9 (diff)
parent9e8627a1ff9207b9e272d248da2e1bd0cc6fe2fe (diff)
Merge commit '9e8627a1ff9207b9e272d248da2e1bd0cc6fe2fe'
* commit '9e8627a1ff9207b9e272d248da2e1bd0cc6fe2fe': asfdec: interpret the first flag in an asf packet as length flag Merged-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavformat/asfdec_o.c')
-rw-r--r--libavformat/asfdec_o.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/libavformat/asfdec_o.c b/libavformat/asfdec_o.c
index bd723772e2..ad601c89be 100644
--- a/libavformat/asfdec_o.c
+++ b/libavformat/asfdec_o.c
@@ -1308,12 +1308,14 @@ static int asf_read_packet_header(AVFormatContext *s)
asf->packet_offset = avio_tell(pb);
error_flags = avio_r8(pb); // read Error Correction Flags
- if (error_flags & ASF_PACKET_FLAG_ERROR_CORRECTION_PRESENT)
+ if (error_flags & ASF_PACKET_FLAG_ERROR_CORRECTION_PRESENT) {
if (!(error_flags & ASF_ERROR_CORRECTION_LENGTH_TYPE)) {
size = error_flags & ASF_PACKET_ERROR_CORRECTION_DATA_SIZE;
avio_skip(pb, size);
}
- len_flags = avio_r8(pb);
+ len_flags = avio_r8(pb);
+ } else
+ len_flags = error_flags;
asf->prop_flags = avio_r8(pb);
READ_LEN(len_flags & ASF_PPI_MASK_PACKET_LENGTH_FIELD_SIZE,
ASF_PPI_FLAG_PACKET_LENGTH_FIELD_, asf->packet_size_internal);