Use bytestream_get_le16 to simplify offset/count calculation for mszh decompression.

Originally committed as revision 19051 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Reimar Döffinger 2009-05-31 10:35:39 +00:00
parent 5a18221ba8
commit 2bee59083d

View File

@ -43,6 +43,7 @@
#include "avcodec.h"
#include "get_bits.h"
#include "bytestream.h"
#include "lcl.h"
#if CONFIG_ZLIB_DECODER
@ -96,10 +97,8 @@ static unsigned int mszh_decomp(unsigned char * srcptr, int srclen, unsigned cha
destptr += 4;
srcptr += 4;
} else {
ofs = *srcptr++;
cnt = *srcptr++;
ofs += cnt * 256;
cnt = (cnt >> 3) + 1;
ofs = bytestream_get_le16(&srcptr);
cnt = (ofs >> 11) + 1;
ofs &= 0x7ff;
cnt *= 4;
if (destptr_end - destptr < cnt) {