Add more paranoid checks of xvmc token.

Originally committed as revision 17453 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Ivan Kalvachev 2009-02-19 09:55:52 +00:00
parent 9cfc1b3a84
commit 859bb3cfee
1 changed files with 4 additions and 1 deletions

View File

@ -78,7 +78,10 @@ int ff_xvmc_field_start(MpegEncContext *s, AVCodecContext *avctx)
assert(avctx);
if (!render || render->xvmc_id != AV_XVMC_ID ||
!render->data_blocks || !render->mv_blocks) {
!render->data_blocks || !render->mv_blocks ||
(unsigned int)render->allocated_mv_blocks > INT_MAX/(64*6) ||
(unsigned int)render->allocated_data_blocks > INT_MAX/64 ||
!render->p_surface) {
av_log(avctx, AV_LOG_ERROR,
"Render token doesn't look as expected.\n");
return -1; // make sure that this is a render packet