#include <stdio.h>
#include "../config.h"
#include "../mangle.h"
+#include <assert.h>
#ifdef HAVE_MALLOC_H
#include <malloc.h>
#endif
#define RET 0xC3 //near return opcode for X86
#ifdef MP_DEBUG
-#define ASSERT(x) if(!(x)) { printf("ASSERT " #x " failed\n"); *((int*)0)=0; }
+#define ASSERT(x) assert(x);
#else
#define ASSERT(x) ;
#endif
else // downscale
{
int xDstInSrc;
+ ASSERT(dstW <= srcW)
+
if(flags&SWS_BICUBIC) filterSize= (int)ceil(1 + 4.0*srcW / (double)dstW);
else if(flags&SWS_X) filterSize= (int)ceil(1 + 4.0*srcW / (double)dstW);
else if(flags&SWS_AREA) filterSize= (int)ceil(1 + 1.0*srcW / (double)dstW);
/* apply src & dst Filter to filter -> filter2
free(filter);
*/
+ ASSERT(filterSize>0)
filter2Size= filterSize;
if(srcFilter) filter2Size+= srcFilter->length - 1;
if(dstFilter) filter2Size+= dstFilter->length - 1;
+ ASSERT(filter2Size>0)
filter2= (double*)memalign(8, filter2Size*dstW*sizeof(double));
for(i=0; i<dstW; i++)
if(min>minFilterSize) minFilterSize= min;
}
+ ASSERT(minFilterSize > 0)
filterSize= (minFilterSize +(filterAlign-1)) & (~(filterAlign-1));
+ ASSERT(filterSize > 0)
filter= (double*)memalign(8, filterSize*dstW*sizeof(double));
*outFilterSize= filterSize;
}
free(filter2); filter2=NULL;
- ASSERT(filterSize > 0)
//FIXME try to align filterpos if possible