[FFmpeg-cvslog] r18396 - trunk/libavcodec/snow.c
michael
subversion
Thu Apr 9 22:23:14 CEST 2009
Author: michael
Date: Thu Apr 9 22:23:13 2009
New Revision: 18396
Log:
Make sure spatial_decomposition_count is not too large for picture size.
this led to an infinite loop in mirror().
Modified:
trunk/libavcodec/snow.c
Modified: trunk/libavcodec/snow.c
==============================================================================
--- trunk/libavcodec/snow.c Thu Apr 9 22:13:35 2009 (r18395)
+++ trunk/libavcodec/snow.c Thu Apr 9 22:23:13 2009 (r18396)
@@ -3625,6 +3625,11 @@ static int decode_header(SnowContext *s)
av_log(s->avctx, AV_LOG_ERROR, "spatial_decomposition_type %d not supported", s->spatial_decomposition_type);
return -1;
}
+ if(FFMIN(s->avctx-> width>>s->chroma_h_shift,
+ s->avctx->height>>s->chroma_v_shift) >> (s->spatial_decomposition_count-1) <= 0){
+ av_log(s->avctx, AV_LOG_ERROR, "spatial_decomposition_count %d too large for size", s->spatial_decomposition_count);
+ return -1;
+ }
s->qlog += get_symbol(&s->c, s->header_state, 1);
s->mv_scale += get_symbol(&s->c, s->header_state, 1);
More information about the ffmpeg-cvslog
mailing list