[FFmpeg-cvslog] asfdec: deobfuscate reading video properties size
Anton Khirnov
git
Fri Feb 11 03:52:14 CET 2011
ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Wed Feb 9 21:55:56 2011 +0100| [4ca29c6534eff7cd1fda521800e52e14a16d3e0e] | committer: Michael Niedermayer
asfdec: deobfuscate reading video properties size
This code will be later split out into a function which takes a 'size'
argument, so I'm keeping the name 'sizeX' here.
Signed-off-by: Ronald S. Bultje <rsbultje at gmail.com>
(cherry picked from commit 0b1d291a716dd79ca6862a95baf9ac574feba885)
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=4ca29c6534eff7cd1fda521800e52e14a16d3e0e
---
libavformat/asfdec.c | 9 ++++-----
1 files changed, 4 insertions(+), 5 deletions(-)
diff --git a/libavformat/asfdec.c b/libavformat/asfdec.c
index cd051ad..0ee6667 100644
--- a/libavformat/asfdec.c
+++ b/libavformat/asfdec.c
@@ -398,7 +398,7 @@ static int asf_read_header(AVFormatContext *s, AVFormatParameters *ap)
ByteIOContext *pb = s->pb;
AVStream *st;
ASFStream *asf_st;
- int size, i;
+ int i;
int64_t gsize;
ff_get_guid(pb, &g);
@@ -559,7 +559,7 @@ static int asf_read_header(AVFormatContext *s, AVFormatParameters *ap)
get_le32(pb);
get_le32(pb);
get_byte(pb);
- size = get_le16(pb); /* size */
+ get_le16(pb); /* size */
sizeX= get_le32(pb); /* size */
st->codec->width = get_le32(pb);
st->codec->height = get_le32(pb);
@@ -569,9 +569,8 @@ static int asf_read_header(AVFormatContext *s, AVFormatParameters *ap)
tag1 = get_le32(pb);
url_fskip(pb, 20);
// av_log(s, AV_LOG_DEBUG, "size:%d tsize:%d sizeX:%d\n", size, total_size, sizeX);
- size= sizeX;
- if (size > 40) {
- st->codec->extradata_size = size - 40;
+ if (sizeX > 40) {
+ st->codec->extradata_size = sizeX - 40;
st->codec->extradata = av_mallocz(st->codec->extradata_size + FF_INPUT_BUFFER_PADDING_SIZE);
get_buffer(pb, st->codec->extradata, st->codec->extradata_size);
}
More information about the ffmpeg-cvslog
mailing list