Index: tjunittest.c |
=================================================================== |
--- tjunittest.c (revision 106486) |
+++ tjunittest.c (working copy) |
@@ -68,6 +68,8 @@ |
"RGB", "BGR", "RGBX", "BGRX", "XBGR", "XRGB", "Grayscale" |
}; |
+const int alphaOffset[TJ_NUMPF] = {-1, -1, 3, 3, 0, 0, -1}; |
+ |
const int _3byteFormats[]={TJPF_RGB, TJPF_BGR}; |
const int _4byteFormats[]={TJPF_RGBX, TJPF_BGRX, TJPF_XBGR, TJPF_XRGB}; |
const int _onlyGray[]={TJPF_GRAY}; |
@@ -156,6 +158,7 @@ |
int roffset=tjRedOffset[pf]; |
int goffset=tjGreenOffset[pf]; |
int boffset=tjBlueOffset[pf]; |
+ int aoffset=alphaOffset[pf]; |
int ps=tjPixelSize[pf]; |
int index, row, col, retval=1; |
int halfway=16*sf.num/sf.denom; |
@@ -165,12 +168,13 @@ |
{ |
for(col=0; col<w; col++) |
{ |
- unsigned char r, g, b; |
+ unsigned char r, g, b, a; |
if(flags&TJFLAG_BOTTOMUP) index=(h-row-1)*w+col; |
else index=row*w+col; |
r=buf[index*ps+roffset]; |
g=buf[index*ps+goffset]; |
b=buf[index*ps+boffset]; |
+ a=aoffset>=0? buf[index*ps+aoffset]:0xFF; |
if(((row/blocksize)+(col/blocksize))%2==0) |
{ |
if(row<halfway) |
@@ -207,6 +211,7 @@ |
} |
} |
} |
+ checkval255(a); |
} |
} |