[Ffmpeg-cvslog] r5868 - trunk/libavcodec/vc1dsp.c

kostya subversion
Mon Jul 31 05:32:59 CEST 2006


Author: kostya
Date: Mon Jul 31 05:32:59 2006
New Revision: 5868

Modified:
   trunk/libavcodec/vc1dsp.c

Log:
Fix overflows in bicubic interpolation.


Modified: trunk/libavcodec/vc1dsp.c
==============================================================================
--- trunk/libavcodec/vc1dsp.c	(original)
+++ trunk/libavcodec/vc1dsp.c	Mon Jul 31 05:32:59 2006
@@ -314,7 +314,7 @@
 
 /** Filter used to interpolate fractional pel values
  */
-static always_inline uint8_t vc1_mspel_filter(const uint8_t *src, int stride, int mode, int r)
+static always_inline int vc1_mspel_filter(const uint8_t *src, int stride, int mode, int r)
 {
     switch(mode){
     case 0: //no shift
@@ -343,7 +343,7 @@
     tptr = tmp;
     for(j = 0; j < 11; j++) {
         for(i = 0; i < 8; i++)
-            tptr[i] = vc1_mspel_filter(src + i, 1, m, r);
+            tptr[i] = clip_uint8(vc1_mspel_filter(src + i, 1, m, r));
         src += stride;
         tptr += 8;
     }
@@ -353,7 +353,7 @@
     tptr = tmp + 8;
     for(j = 0; j < 8; j++) {
         for(i = 0; i < 8; i++)
-            dst[i] = vc1_mspel_filter(tptr + i, 8, m, r);
+            dst[i] = clip_uint8(vc1_mspel_filter(tptr + i, 8, m, r));
         dst += stride;
         tptr += 8;
     }




More information about the ffmpeg-cvslog mailing list