diff --git a/src/post_modules/GTK/source/encode_truecolor.c b/src/post_modules/GTK/source/encode_truecolor.c index 8f518b47154d485006561542b5e34ccf72872721..517b74f55475e7ac34216ce83c8c872f12674eaa 100644 --- a/src/post_modules/GTK/source/encode_truecolor.c +++ b/src/post_modules/GTK/source/encode_truecolor.c @@ -208,7 +208,17 @@ static void encode_truecolor_generic(int rbits, int rshift, int gbits, if(!alignbits) alignbits=1; -#define OPTIMIZE(rb,rs,gb,gs,bb,bs,al,fun) if(rbits==rb&&rshift==rs&&gbits==gb&&gshift==gs&&bbits==bb&&bshift==bs&&alignbits==al) {DEBUG_PF(("Optimized case %s%s\n",#fun,swap_bytes?"_swapped":"")); return (swap_bytes?fun##_swapped(s,(void *)dest,img->xsize*img->ysize,img->xsize):fun(s,(void *)dest,img->xsize*img->ysize,img->xsize));} +#define OPTIMIZE(rb,rs,gb,gs,bb,bs,al,fun) do { \ + if(rbits==rb && rshift==rs && gbits==gb && gshift==gs && \ + bbits==bb && bshift==bs && alignbits==al) { \ + DEBUG_PF(("Optimized case %s%s\n", #fun, swap_bytes?"_swapped":"")); \ + if (swap_bytes) \ + fun##_swapped(s, (void *)dest, img->xsize*img->ysize, img->xsize); \ + else \ + fun(s,(void *)dest,img->xsize*img->ysize,img->xsize); \ + return; \ + } \ + } while(0) switch(bpp) {