[Ffmpeg-devel] WMV3 segfaults in vc1_decode_intra_block()

Nikns Siankin nikns
Mon Dec 18 12:06:15 CET 2006


>Index: libavcodec/vc1.c
>===================================================================
>--- libavcodec/vc1.c	(revision 7322)
>+++ libavcodec/vc1.c	(working copy)
>@@ -3072,8 +3072,8 @@
>         ac_val -= 16 * s->block_wrap[n];
> 
>     q1 = s->current_picture.qscale_table[mb_pos];
>-    if(dc_pred_dir && c_avail) q2 = s->current_picture.qscale_table[mb_pos - 1];
>-    if(!dc_pred_dir && a_avail) q2 = s->current_picture.qscale_table[mb_pos - s->mb_stride];
>+    if(dc_pred_dir && c_avail && mb_pos) q2 = s->current_picture.qscale_table[mb_pos - 1];
>+    if(!dc_pred_dir && a_avail && mb_pos > s->mb_stride) q2 = s->current_picture.qscale_table[mb_pos - s->mb_stride];
>     if(n && n<4) q2 = q1;
> 
>     if(coded) {

This diff fixes crashes.
Thanks!




More information about the ffmpeg-devel mailing list