diff snow.c @ 2952:d7be13d3ef00 libavcodec

check block_max_depth (fixes crash)
author michael
date Sat, 03 Dec 2005 14:20:03 +0000
parents 98a2bd9c8674
children ef2149182f1c
line wrap: on
line diff
--- a/snow.c	Sat Dec 03 03:07:54 2005 +0000
+++ b/snow.c	Sat Dec 03 14:20:03 2005 +0000
@@ -3185,6 +3185,11 @@
     s->mv_scale= get_symbol(&s->c, s->header_state, 0);
     s->qbias= get_symbol(&s->c, s->header_state, 1);
     s->block_max_depth= get_symbol(&s->c, s->header_state, 0);
+    if(s->block_max_depth > 1){
+        av_log(s->avctx, AV_LOG_ERROR, "block_max_depth= %d is too large", s->block_max_depth);
+        s->block_max_depth= 0;
+        return -1;
+    }
 
     return 0;
 }