diff options
author | Paul B Mahol <onemda@gmail.com> | 2018-04-22 13:14:26 +0200 |
---|---|---|
committer | Paul B Mahol <onemda@gmail.com> | 2018-04-22 13:14:26 +0200 |
commit | 00099ef0d0ddf6f5bdd8ddfb5b0179c560674af0 (patch) | |
tree | ee0207384a4900c1ba63eb15d724871ef9f4a77d /libavformat/dsfdec.c | |
parent | 5d3efe9e1f0b56595bd5d1287ae07a8f4277d71a (diff) | |
download | ffmpeg-00099ef0d0ddf6f5bdd8ddfb5b0179c560674af0.tar.gz |
avformat/dsfdec: fix calculation of size of data chunk
Ignore extra 12 bytes that belong to tag and size.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Diffstat (limited to 'libavformat/dsfdec.c')
-rw-r--r-- | libavformat/dsfdec.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libavformat/dsfdec.c b/libavformat/dsfdec.c index e0485f1492..5e06fd63a5 100644 --- a/libavformat/dsfdec.c +++ b/libavformat/dsfdec.c @@ -137,8 +137,8 @@ static int dsf_read_header(AVFormatContext *s) dsf->data_end = avio_tell(pb); if (avio_rl32(pb) != MKTAG('d', 'a', 't', 'a')) return AVERROR_INVALIDDATA; - dsf->data_size = avio_rl64(pb); - dsf->data_end += dsf->data_size; + dsf->data_size = avio_rl64(pb) - 12; + dsf->data_end += dsf->data_size + 12; s->internal->data_offset = avio_tell(pb); return 0; |