pike.git / src / modules / Image / encodings / xcf.c

version» Context lines:

pike.git/src/modules/Image/encodings/xcf.c:1:   #include "global.h" - RCSID("$Id: xcf.c,v 1.27 2000/10/19 13:37:52 grubba Exp $"); + RCSID("$Id: xcf.c,v 1.28 2000/10/19 14:56:03 grubba Exp $");      #include "image_machine.h"      #include "pike_macros.h"   #include "object.h"   #include "constants.h"   #include "module_support.h"   #include "interpret.h"   #include "object.h"   #include "svalue.h"
pike.git/src/modules/Image/encodings/xcf.c:1302:    int ix, iy=y/shrink; \    for(cy=0; cy<eheight; cy+=shrink,iy=((cy+y)/shrink)) \    { \    int ind=cy*ewidth, bi=(i->xsize*iy); \    int ds = 0; \    if(iy >= i->ysize) continue; \    ix= x/shrink; \    for(cx=0; cx<ewidth; cx+=shrink,ind+=shrink,ix++) \    { \    rgb_group pix; \ -  rgb_group apix; \ +     if(ix >= i->xsize) continue      #define LOOP_EXIT() \    i->img[ix+bi] = pix; \    if(a) a->img[ix+bi] = apix; \    } \    }}       if(rle)    span = ewidth*eheight;    else    span = 1;    -  +  { +  rgb_group apix;    switch( bpp )    {    case 1: /* indexed or grey */ -  +  apix.r = apix.g = apix.b = 255;    if(colortable)    {    LOOP_INIT();    pix = colortable[s[ind]]; -  apix.r = apix.g = apix.b = 255; +     LOOP_EXIT();    }    else    {    LOOP_INIT();    pix.r = pix.g = pix.b = s[ind]; -  apix.r = apix.g = apix.b = 255; +     LOOP_EXIT();    }    break;    case 2: /* indexed or grey with alpha */    if(colortable)    {    LOOP_INIT();    pix = colortable[s[ind]];    apix.r = apix.g = apix.b = s[ind+span];    LOOP_EXIT();    }    else    {    LOOP_INIT();    pix.r = pix.g = pix.b = s[ind];    apix.r = apix.g = apix.b = s[ind+span];    LOOP_EXIT();    }    break;    case 3: /* rgb */ -  +  apix.r = apix.g = apix.b = 255;    LOOP_INIT();    pix.r = s[ind];    pix.g = s[ind+span];    pix.b = s[ind+span*2]; -  apix.r = apix.g = apix.b = 255; +     LOOP_EXIT();    break;    case 4: /* rgba */    LOOP_INIT();    pix.r = s[ind];    pix.g = s[ind+span];    pix.b = s[ind+span*2];    apix.r = apix.b = apix.g = s[ind+span*3];    LOOP_EXIT();    break;    } -  +  }       if( df )    {    free(df);    df=0;    }    x += TILE_WIDTH;       if( (int)x >= (int)rxs )    {