OSDN Git Service

minor bugfixes (noone noticed them)
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 21 Dec 2001 02:09:34 +0000 (02:09 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 21 Dec 2001 02:09:34 +0000 (02:09 +0000)
a few more asserts

Originally committed as revision 3642 to svn://svn.mplayerhq.hu/mplayer/trunk/postproc

postproc/swscale.c
postproc/swscale_template.c

index d81fa6b..5c734c6 100644 (file)
@@ -206,7 +206,7 @@ static inline void yuv2yuvXinC(int16_t *lumFilter, int16_t **lumSrc, int lumFilt
                        int u=0;
                        int v=0;
                        int j;
-                       for(j=0; j<lumFilterSize; j++)
+                       for(j=0; j<chrFilterSize; j++)
                        {
                                u += chrSrc[j][i] * chrFilter[j];
                                v += chrSrc[j][i + 2048] * chrFilter[j];
index 1710237..4e106d6 100644 (file)
@@ -1558,8 +1558,8 @@ static inline void RENAME(hScale)(int16_t *dst, int dstW, uint8_t *src, int srcW
                        "addl $4, %0                    \n\t"
                        " jnc 1b                        \n\t"
 
-                       : "+r" (counter)
-                       : "r" (filter), "m" (filterPos), "m" (dst), "m"(src+filterSize),
+                       : "+r" (counter), "+r" (filter)
+                       : "m" (filterPos), "m" (dst), "m"(src+filterSize),
                          "m" (src), "r" (filterSize*2)
                        : "%ebx", "%eax", "%ecx"
                );
@@ -2339,12 +2339,14 @@ else            chrYInc= lumYInc>>1, chrDstH= dstH;
                for(i=0; i<vLumBufSize; i++) memset(lumPixBuf[i], 0, 4000);
                for(i=0; i<vChrBufSize; i++) memset(chrPixBuf[i], 64, 8000);
 
+               ASSERT(chrDstH<=dstH)
+               ASSERT(vLumFilterSize*dstH*4<16000)
+               ASSERT(vChrFilterSize*chrDstH*4<16000)
 #ifdef HAVE_MMX
                // pack filter data for mmx code
                for(i=0; i<vLumFilterSize*dstH; i++)
                        lumMmxFilter[4*i]=lumMmxFilter[4*i+1]=lumMmxFilter[4*i+2]=lumMmxFilter[4*i+3]=
                                vLumFilter[i];
-
                for(i=0; i<vChrFilterSize*chrDstH; i++)
                        chrMmxFilter[4*i]=chrMmxFilter[4*i+1]=chrMmxFilter[4*i+2]=chrMmxFilter[4*i+3]=
                                vChrFilter[i];
@@ -2598,4 +2600,4 @@ else              chrYInc= lumYInc>>1, chrDstH= dstH;
        __asm __volatile(EMMS:::"memory");
 #endif
        firstTime=0;
-}
\ No newline at end of file
+}