kwo pushed a commit to branch master.

http://git.enlightenment.org/legacy/imlib2.git/commit/?id=fb4fb24e44ba7a117bd10f9fcd5d955cc7b1eedd

commit fb4fb24e44ba7a117bd10f9fcd5d955cc7b1eedd
Author: Kim Woelders <[email protected]>
Date:   Fri Feb 25 06:22:36 2022 +0100

    Refactor image flags stuff
    
    For improved grepability.
---
 src/lib/api.c                     | 36 ++++++++++++++++++------------------
 src/lib/blend.c                   | 10 +++++-----
 src/lib/ellipse.c                 | 12 ++++++------
 src/lib/font_draw.c               |  8 +++++---
 src/lib/grad.c                    |  4 ++--
 src/lib/image.c                   | 22 +++++++++++-----------
 src/lib/image.h                   | 16 +++++-----------
 src/lib/line.c                    | 12 +++++++-----
 src/lib/polygon.c                 | 12 ++++++------
 src/lib/rectangle.c               |  8 ++++----
 src/lib/x11_draw.c                |  2 +-
 src/lib/x11_pixmap.c              |  3 ++-
 src/lib/x11_rend.c                |  6 +++---
 src/modules/loaders/loader_argb.c |  4 ++--
 src/modules/loaders/loader_bmp.c  |  6 +++---
 src/modules/loaders/loader_ff.c   |  2 +-
 src/modules/loaders/loader_gif.c  |  2 +-
 src/modules/loaders/loader_heif.c |  5 +----
 src/modules/loaders/loader_ico.c  |  3 ++-
 src/modules/loaders/loader_jpeg.c |  4 ++--
 src/modules/loaders/loader_lbm.c  |  4 ++--
 src/modules/loaders/loader_png.c  |  4 ++--
 src/modules/loaders/loader_pnm.c  |  4 ++--
 src/modules/loaders/loader_svg.c  |  2 +-
 src/modules/loaders/loader_tga.c  | 12 ++++++------
 src/modules/loaders/loader_tiff.c |  6 +++---
 src/modules/loaders/loader_webp.c |  2 +-
 src/modules/loaders/loader_xbm.c  |  2 +-
 src/modules/loaders/loader_xpm.c  |  2 +-
 29 files changed, 106 insertions(+), 109 deletions(-)

diff --git a/src/lib/api.c b/src/lib/api.c
index 23b8143..4f78304 100644
--- a/src/lib/api.c
+++ b/src/lib/api.c
@@ -1393,7 +1393,7 @@ imlib_free_image_and_decache(void)
 
    CHECK_PARAM_POINTER("image", ctx->image);
    CAST_IMAGE(im, ctx->image);
-   SET_FLAG(im->flags, F_INVALID);
+   IM_FLAG_SET(im, F_INVALID);
    __imlib_FreeImage(im);
    ctx->image = NULL;
 }
@@ -1530,7 +1530,7 @@ imlib_image_has_alpha(void)
 
    CHECK_PARAM_POINTER_RETURN("image", ctx->image, 0);
    CAST_IMAGE(im, ctx->image);
-   if (IMAGE_HAS_ALPHA(im))
+   if (IM_FLAG_ISSET(im, F_HAS_ALPHA))
       return 1;
    return 0;
 }
@@ -1551,7 +1551,7 @@ imlib_image_set_changes_on_disk(void)
 
    CHECK_PARAM_POINTER("image", ctx->image);
    CAST_IMAGE(im, ctx->image);
-   SET_FLAG(im->flags, F_ALWAYS_CHECK_DISK);
+   IM_FLAG_SET(im, F_ALWAYS_CHECK_DISK);
 }
 
 /**
@@ -1623,7 +1623,7 @@ imlib_image_set_format(const char *format)
    CAST_IMAGE(im, ctx->image);
    free(im->format);
    im->format = (format) ? strdup(format) : NULL;
-   if (!(im->flags & F_FORMAT_IRRELEVANT))
+   if (!IM_FLAG_ISSET(im, F_FORMAT_IRRELEVANT))
      {
         __imlib_DirtyImage(im);
      }
@@ -1643,7 +1643,7 @@ imlib_image_set_irrelevant_format(char irrelevant)
 
    CHECK_PARAM_POINTER("image", ctx->image);
    CAST_IMAGE(im, ctx->image);
-   UPDATE_FLAG(im->flags, F_FORMAT_IRRELEVANT, irrelevant);
+   IM_FLAG_UPDATE(im, F_FORMAT_IRRELEVANT, irrelevant);
 }
 
 /**
@@ -1660,7 +1660,7 @@ imlib_image_set_irrelevant_border(char irrelevant)
 
    CHECK_PARAM_POINTER("image", ctx->image);
    CAST_IMAGE(im, ctx->image);
-   UPDATE_FLAG(im->flags, F_BORDER_IRRELEVANT, irrelevant);
+   IM_FLAG_UPDATE(im, F_BORDER_IRRELEVANT, irrelevant);
 }
 
 /**
@@ -1678,7 +1678,7 @@ imlib_image_set_irrelevant_alpha(char irrelevant)
 
    CHECK_PARAM_POINTER("image", ctx->image);
    CAST_IMAGE(im, ctx->image);
-   UPDATE_FLAG(im->flags, F_ALPHA_IRRELEVANT, irrelevant);
+   IM_FLAG_UPDATE(im, F_ALPHA_IRRELEVANT, irrelevant);
 }
 
 /**
@@ -1710,7 +1710,7 @@ imlib_image_set_has_alpha(char has_alpha)
 
    CHECK_PARAM_POINTER("image", ctx->image);
    CAST_IMAGE(im, ctx->image);
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA, has_alpha);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, has_alpha);
 }
 
 #ifdef BUILD_X11
@@ -1989,7 +1989,7 @@ imlib_create_image_using_data(int width, int height, 
DATA32 * data)
       return NULL;
    im = __imlib_CreateImage(width, height, data);
    if (im)
-      SET_FLAG(im->flags, F_DONT_FREE_DATA);
+      IM_FLAG_SET(im, F_DONT_FREE_DATA);
    return (Imlib_Image) im;
 }
 
@@ -2102,7 +2102,7 @@ imlib_create_image_from_drawable(Pixmap mask, int x, int 
y, int width,
                                   ctx->colormap, ctx->depth, x, y, width,
                                   height, &domask, need_to_grab_x))
      {
-        UPDATE_FLAG(im->flags, F_HAS_ALPHA, domask);
+        IM_FLAG_UPDATE(im, F_HAS_ALPHA, domask);
      }
    else
      {
@@ -2196,7 +2196,7 @@ imlib_create_scaled_image_from_drawable(Pixmap mask, int 
source_x,
                                     source_width, source_height,
                                     &domask, need_to_grab_x);
 
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA, domask);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, domask);
 
    return (Imlib_Image) im;
 }
@@ -2322,7 +2322,7 @@ imlib_clone_image(void)
      }
    memcpy(im->data, im_old->data, im->w * im->h * sizeof(DATA32));
    im->flags = im_old->flags;
-   SET_FLAG(im->flags, F_UNCACHEABLE);
+   IM_FLAG_SET(im, F_UNCACHEABLE);
    im->moddate = im_old->moddate;
    im->border = im_old->border;
    im->loader = im_old->loader;
@@ -2363,9 +2363,9 @@ imlib_create_cropped_image(int x, int y, int width, int 
height)
         __imlib_FreeImage(im);
         return NULL;
      }
-   if (IMAGE_HAS_ALPHA(im_old))
+   if (IM_FLAG_ISSET(im_old, F_HAS_ALPHA))
      {
-        SET_FLAG(im->flags, F_HAS_ALPHA);
+        IM_FLAG_SET(im, F_HAS_ALPHA);
         __imlib_BlendImageToImage(im_old, im, 0, 0, 1, x, y, abs(width),
                                   abs(height), 0, 0, width, height, NULL,
                                   (ImlibOp) IMLIB_OP_COPY,
@@ -2419,9 +2419,9 @@ imlib_create_cropped_scaled_image(int source_x, int 
source_y,
         __imlib_FreeImage(im);
         return NULL;
      }
-   if (IMAGE_HAS_ALPHA(im_old))
+   if (IM_FLAG_ISSET(im_old, F_HAS_ALPHA))
      {
-        SET_FLAG(im->flags, F_HAS_ALPHA);
+        IM_FLAG_SET(im, F_HAS_ALPHA);
         __imlib_BlendImageToImage(im_old, im, ctx->anti_alias, 0, 1, source_x,
                                   source_y, source_width, source_height, 0, 0,
                                   destination_width, destination_height, NULL,
@@ -4427,7 +4427,7 @@ imlib_create_rotated_image(double angle)
         __imlib_RotateSample(im_old->data, im->data, im_old->w, im_old->w,
                              im_old->h, im->w, sz, sz, x, y, dx, dy, -dy, dx);
      }
-   SET_FLAG(im->flags, F_HAS_ALPHA);
+   IM_FLAG_SET(im, F_HAS_ALPHA);
 
    return (Imlib_Image) im;
 }
@@ -4486,7 +4486,7 @@ imlib_rotate_image_from_buffer(double angle, Imlib_Image 
source_image)
         __imlib_RotateSample(im_old->data, im->data, im_old->w, im_old->w,
                              im_old->h, im->w, sz, sz, x, y, dx, dy, -dy, dx);
      }
-   SET_FLAG(im->flags, F_HAS_ALPHA);
+   IM_FLAG_SET(im, F_HAS_ALPHA);
 
    return;
 }
diff --git a/src/lib/blend.c b/src/lib/blend.c
index 3442090..6e56a16 100644
--- a/src/lib/blend.c
+++ b/src/lib/blend.c
@@ -1807,9 +1807,9 @@ __imlib_BlendImageToImage(ImlibImage * im_src, ImlibImage 
* im_dst,
 
    if ((ssw == ddw) && (ssh == ddh))
      {
-        if (!IMAGE_HAS_ALPHA(im_dst))
+        if (!IM_FLAG_ISSET(im_dst, F_HAS_ALPHA))
            merge_alpha = 0;
-        if (!IMAGE_HAS_ALPHA(im_src))
+        if (!IM_FLAG_ISSET(im_src, F_HAS_ALPHA))
           {
              rgb_src = 1;
              if (merge_alpha)
@@ -1925,9 +1925,9 @@ __imlib_BlendImageToImage(ImlibImage * im_src, ImlibImage 
* im_dst,
           }
         /* setup h */
         h = dh;
-        if (!IMAGE_HAS_ALPHA(im_dst))
+        if (!IM_FLAG_ISSET(im_dst, F_HAS_ALPHA))
            merge_alpha = 0;
-        if (!IMAGE_HAS_ALPHA(im_src))
+        if (!IM_FLAG_ISSET(im_src, F_HAS_ALPHA))
           {
              rgb_src = 1;
              if (merge_alpha)
@@ -1942,7 +1942,7 @@ __imlib_BlendImageToImage(ImlibImage * im_src, ImlibImage 
* im_dst,
              /* scale the imagedata for this LINESIZE lines chunk of image */
              if (aa)
                {
-                  if (IMAGE_HAS_ALPHA(im_src))
+                  if (IM_FLAG_ISSET(im_src, F_HAS_ALPHA))
                      __imlib_ScaleAARGBA(scaleinfo, buf, dxx, dyy + y,
                                          0, 0, dw, hh, dw, im_src->w);
                   else
diff --git a/src/lib/ellipse.c b/src/lib/ellipse.c
index b7f21dd..5d70984 100644
--- a/src/lib/ellipse.c
+++ b/src/lib/ellipse.c
@@ -728,17 +728,17 @@ __imlib_Ellipse_DrawToImage(int xc, int yc, int a, int b, 
DATA32 color,
    if ((w < 1) || (h < 1))
       return;
 
-   if (blend && IMAGE_HAS_ALPHA(im))
+   if (blend && IM_FLAG_ISSET(im, F_HAS_ALPHA))
       __imlib_build_pow_lut();
 
    if (anti_alias)
       __imlib_Ellipse_DrawToData_AA(xc, yc, a, b, color,
                                     im->data, im->w, clx, cly, clw, clh,
-                                    op, IMAGE_HAS_ALPHA(im), blend);
+                                    op, IM_FLAG_ISSET(im, F_HAS_ALPHA), blend);
    else
       __imlib_Ellipse_DrawToData(xc, yc, a, b, color,
                                  im->data, im->w, clx, cly, clw, clh,
-                                 op, IMAGE_HAS_ALPHA(im), blend);
+                                 op, IM_FLAG_ISSET(im, F_HAS_ALPHA), blend);
 }
 
 void
@@ -796,15 +796,15 @@ __imlib_Ellipse_FillToImage(int xc, int yc, int a, int b, 
DATA32 color,
    if ((w < 1) || (h < 1))
       return;
 
-   if (blend && IMAGE_HAS_ALPHA(im))
+   if (blend && IM_FLAG_ISSET(im, F_HAS_ALPHA))
       __imlib_build_pow_lut();
 
    if (anti_alias)
       __imlib_Ellipse_FillToData_AA(xc, yc, a, b, color,
                                     im->data, im->w, clx, cly, clw, clh,
-                                    op, IMAGE_HAS_ALPHA(im), blend);
+                                    op, IM_FLAG_ISSET(im, F_HAS_ALPHA), blend);
    else
       __imlib_Ellipse_FillToData(xc, yc, a, b, color,
                                  im->data, im->w, clx, cly, clw, clh,
-                                 op, IMAGE_HAS_ALPHA(im), blend);
+                                 op, IM_FLAG_ISSET(im, F_HAS_ALPHA), blend);
 }
diff --git a/src/lib/font_draw.c b/src/lib/font_draw.c
index b344447..53030c1 100644
--- a/src/lib/font_draw.c
+++ b/src/lib/font_draw.c
@@ -93,7 +93,7 @@ __imlib_render_str(ImlibImage * im, ImlibFont * fn, int drx, 
int dry,
         free(data);
         return;
      }
-   SET_FLAG(im2->flags, F_HAS_ALPHA);
+   IM_FLAG_SET(im2, F_HAS_ALPHA);
 
    ascent = __imlib_font_max_ascent_get(fn);
 
@@ -128,7 +128,8 @@ __imlib_render_str(ImlibImage * im, ImlibFont * fn, int 
drx, int dry,
      }
    if (angle == 0.0)
      {
-        __imlib_BlendImageToImage(im2, im, 0, 1, IMAGE_HAS_ALPHA(im), 0, 0,
+        __imlib_BlendImageToImage(im2, im, 0, 1,
+                                  IM_FLAG_ISSET(im, F_HAS_ALPHA), 0, 0,
                                   im2->w, im2->h, drx, dry, im2->w, im2->h,
                                   NULL, op, clx, cly, clw, clh);
      }
@@ -150,7 +151,8 @@ __imlib_render_str(ImlibImage * im, ImlibFont * fn, int 
drx, int dry,
              xx -= ca * im2->w;
              yy -= ca * im2->h;
           }
-        __imlib_BlendImageToImageSkewed(im2, im, 1, 1, IMAGE_HAS_ALPHA(im), 0,
+        __imlib_BlendImageToImageSkewed(im2, im, 1, 1,
+                                        IM_FLAG_ISSET(im, F_HAS_ALPHA), 0,
                                         0, im2->w, im2->h, xx, yy, (w * ca),
                                         (w * sa), 0, 0, NULL, op, clx, cly, 
clw,
                                         clh);
diff --git a/src/lib/grad.c b/src/lib/grad.c
index b3df3a3..967bdd2 100644
--- a/src/lib/grad.c
+++ b/src/lib/grad.c
@@ -338,7 +338,7 @@ __imlib_DrawGradient(ImlibImage * im, int x, int y, int w, 
int h,
    switch (op)
      {
      case OP_COPY:
-        if (IMAGE_HAS_ALPHA(im))
+        if (IM_FLAG_ISSET(im, F_HAS_ALPHA))
           {
              __imlib_build_pow_lut();
              for (yy = 0; yy < h; yy++)
@@ -540,7 +540,7 @@ __imlib_DrawHsvaGradient(ImlibImage * im, int x, int y, int 
w, int h,
    switch (op)
      {
      case OP_COPY:
-        if (IMAGE_HAS_ALPHA(im))
+        if (IM_FLAG_ISSET(im, F_HAS_ALPHA))
           {
              __imlib_build_pow_lut();
              for (yy = 0; yy < h; yy++)
diff --git a/src/lib/image.c b/src/lib/image.c
index b5e1b91..906fbfa 100644
--- a/src/lib/image.c
+++ b/src/lib/image.c
@@ -105,7 +105,7 @@ __imlib_ConsumeImage(ImlibImage * im)
       free(im->real_file);
    free(im->file);
    free(im->key);
-   if ((IMAGE_FREE_DATA(im)) && (im->data))
+   if (im->data && !IM_FLAG_ISSET(im, F_DONT_FREE_DATA))
       __imlib_FreeData(im);
    free(im->format);
 
@@ -122,7 +122,7 @@ __imlib_FindCachedImage(const char *file, int frame)
    for (im = images, im_prev = NULL; im; im_prev = im, im = im->next)
      {
         /* if the filenames match and it's valid */
-        if (!strcmp(file, im->file) && IMAGE_IS_VALID(im) &&
+        if (!strcmp(file, im->file) && !IM_FLAG_ISSET(im, F_INVALID) &&
             frame == im->frame_num)
           {
              /* move the image to the head of the image list */
@@ -186,7 +186,7 @@ __imlib_CurrentCacheSize(void)
         /* mayaswell clean out stuff thats invalid that we dont need anymore */
         if (im->references == 0)
           {
-             if (!(IMAGE_IS_VALID(im)))
+             if (IM_FLAG_ISSET(im, F_INVALID))
                {
                   __imlib_RemoveImageFromCache(im);
                   __imlib_ConsumeImage(im);
@@ -217,7 +217,7 @@ __imlib_CleanupImageCache(void)
    for (im = images; im; im = im_next)
      {
         im_next = im->next;
-        if ((im->references <= 0) && (!(IMAGE_IS_VALID(im))))
+        if (im->references <= 0 && IM_FLAG_ISSET(im, F_INVALID))
           {
              __imlib_RemoveImageFromCache(im);
              __imlib_ConsumeImage(im);
@@ -310,7 +310,7 @@ __imlib_CreateImage(int w, int h, DATA32 * data)
    im->h = h;
    im->data = data;
    im->references = 1;
-   SET_FLAG(im->flags, F_UNCACHEABLE);
+   IM_FLAG_SET(im, F_UNCACHEABLE);
    return im;
 }
 
@@ -452,9 +452,9 @@ __imlib_LoadImage(const char *file, ImlibLoadArgs * ila)
    /* if we found a cached image and we should always check that it is */
    /* accurate to the disk conents if they changed since we last loaded */
    /* and that it is still a valid image */
-   if ((im) && (IMAGE_IS_VALID(im)))
+   if (im && !IM_FLAG_ISSET(im, F_INVALID))
      {
-        if (IMAGE_ALWAYS_CHECK_DISK(im))
+        if (IM_FLAG_ISSET(im, F_ALWAYS_CHECK_DISK))
           {
              time_t              current_modified_time;
 
@@ -465,7 +465,7 @@ __imlib_LoadImage(const char *file, ImlibLoadArgs * ila)
              if (current_modified_time != im->moddate)
                {
                   /* invalidate image */
-                  SET_FLAG(im->flags, F_INVALID);
+                  IM_FLAG_SET(im, F_INVALID);
                }
              else
                {
@@ -649,7 +649,7 @@ __imlib_LoadImage(const char *file, ImlibLoadArgs * ila)
    if (!ila->nocache)
       __imlib_AddImageToCache(im);
    else
-      SET_FLAG(im->flags, F_UNCACHEABLE);
+      IM_FLAG_SET(im, F_UNCACHEABLE);
 
    return im;
 }
@@ -728,7 +728,7 @@ __imlib_FreeImage(ImlibImage * im)
         /* reduce a reference from the count */
         im->references--;
         /* if its uncachchable ... */
-        if (IMAGE_IS_UNCACHEABLE(im))
+        if (IM_FLAG_ISSET(im, F_UNCACHEABLE))
           {
              /* and we're down to no references for the image then free it */
              if (im->references == 0)
@@ -744,7 +744,7 @@ __imlib_FreeImage(ImlibImage * im)
 void
 __imlib_DirtyImage(ImlibImage * im)
 {
-   SET_FLAG(im->flags, F_INVALID);
+   IM_FLAG_SET(im, F_INVALID);
 #ifdef BUILD_X11
    /* and dirty all pixmaps generated from it */
    __imlib_DirtyPixmapsForImage(im);
diff --git a/src/lib/image.h b/src/lib/image.h
index 393c37b..a36bbac 100644
--- a/src/lib/image.h
+++ b/src/lib/image.h
@@ -132,17 +132,11 @@ void                __imlib_SetCacheSize(int size);
 int                 __imlib_GetCacheSize(void);
 int                 __imlib_CurrentCacheSize(void);
 
-#define IMAGE_HAS_ALPHA(im) ((im)->flags & F_HAS_ALPHA)
-#define IMAGE_IS_UNLOADED(im) ((im)->flags & F_UNLOADED)
-#define IMAGE_IS_UNCACHEABLE(im) ((im)->flags & F_UNCACHEABLE)
-#define IMAGE_ALWAYS_CHECK_DISK(im) ((im)->flags & F_ALWAYS_CHECK_DISK)
-#define IMAGE_IS_VALID(im) (!((im)->flags & F_INVALID))
-#define IMAGE_FREE_DATA(im) (!((im)->flags & F_DONT_FREE_DATA))
-
-#define SET_FLAG(flags, f) ((flags) |= (f))
-#define UNSET_FLAG(flags, f) ((flags) &= (~f))
-#define UPDATE_FLAG(flags, f, set) \
-   do { if (set) SET_FLAG(flags, f); else UNSET_FLAG(flags, f); } while(0)
+#define IM_FLAG_SET(im, f)      ((im)->flags |= (f))
+#define IM_FLAG_CLR(im, f)      ((im)->flags &= ~(f))
+#define IM_FLAG_UPDATE(im, f, set) \
+   do { if (set) IM_FLAG_SET(im, f); else IM_FLAG_CLR(im, f); } while(0)
+#define IM_FLAG_ISSET(im, f)    (((im)->flags & (f)) != 0)
 
 #define LOAD_BREAK       2      /* Break signaled by progress callback */
 #define LOAD_SUCCESS     1      /* Image loaded successfully           */
diff --git a/src/lib/line.c b/src/lib/line.c
index 930a230..1405f55 100644
--- a/src/lib/line.c
+++ b/src/lib/line.c
@@ -42,10 +42,11 @@ __imlib_Point_DrawToImage(int x, int y, DATA32 color,
 
    if (A_VAL(&color) == 0xff)
       blend = 0;
-   if (blend && IMAGE_HAS_ALPHA(im))
+   if (blend && IM_FLAG_ISSET(im, F_HAS_ALPHA))
       __imlib_build_pow_lut();
 
-   pfunc = __imlib_GetPointDrawFunction(op, IMAGE_HAS_ALPHA(im), blend);
+   pfunc = __imlib_GetPointDrawFunction(op, IM_FLAG_ISSET(im, F_HAS_ALPHA),
+                                        blend);
    if (pfunc)
       pfunc(color, im->data + (im->w * y) + x);
    if (make_updates)
@@ -695,19 +696,20 @@ __imlib_Line_DrawToImage(int x0, int y0, int x1, int y1, 
DATA32 color,
    if ((y0 >= (cly + clh)) && (y1 >= (cly + clh)))
       return NULL;
 
-   if (blend && IMAGE_HAS_ALPHA(im))
+   if (blend && IM_FLAG_ISSET(im, F_HAS_ALPHA))
       __imlib_build_pow_lut();
 
    if (anti_alias)
       drew = __imlib_Line_DrawToData_AA(x0, y0, x1, y1, color,
                                         im->data, im->w, clx, cly, clw, clh,
                                         &cl_x0, &cl_y0, &cl_x1, &cl_y1,
-                                        op, IMAGE_HAS_ALPHA(im), blend);
+                                        op, IM_FLAG_ISSET(im, F_HAS_ALPHA),
+                                        blend);
    else
       drew = __imlib_Line_DrawToData(x0, y0, x1, y1, color,
                                      im->data, im->w, clx, cly, clw, clh,
                                      &cl_x0, &cl_y0, &cl_x1, &cl_y1,
-                                     op, IMAGE_HAS_ALPHA(im), blend);
+                                     op, IM_FLAG_ISSET(im, F_HAS_ALPHA), 
blend);
 
    if (drew && make_updates)
      {
diff --git a/src/lib/polygon.c b/src/lib/polygon.c
index f508fba..918fcdf 100644
--- a/src/lib/polygon.c
+++ b/src/lib/polygon.c
@@ -1074,19 +1074,19 @@ __imlib_Polygon_DrawToImage(ImlibPoly * poly, char 
close, DATA32 color,
    if ((clw < 1) || (clh < 1))
       return;
 
-   if (blend && IMAGE_HAS_ALPHA(im))
+   if (blend && IM_FLAG_ISSET(im, F_HAS_ALPHA))
       __imlib_build_pow_lut();
 
    if (anti_alias)
       __imlib_Polygon_DrawToData_AA(poly, close, color,
                                     im->data, im->w,
                                     clx, cly, clw, clh,
-                                    op, IMAGE_HAS_ALPHA(im), blend);
+                                    op, IM_FLAG_ISSET(im, F_HAS_ALPHA), blend);
    else
       __imlib_Polygon_DrawToData(poly, close, color,
                                  im->data, im->w,
                                  clx, cly, clw, clh,
-                                 op, IMAGE_HAS_ALPHA(im), blend);
+                                 op, IM_FLAG_ISSET(im, F_HAS_ALPHA), blend);
 }
 
 /** Polygon Filling **/
@@ -1829,17 +1829,17 @@ __imlib_Polygon_FillToImage(ImlibPoly * poly, DATA32 
color,
    if ((clw < 1) || (clh < 1))
       return;
 
-   if (blend && IMAGE_HAS_ALPHA(im))
+   if (blend && IM_FLAG_ISSET(im, F_HAS_ALPHA))
       __imlib_build_pow_lut();
 
    if (anti_alias)
       __imlib_Polygon_FillToData_AA(poly, color,
                                     im->data, im->w,
                                     clx, cly, clw, clh,
-                                    op, IMAGE_HAS_ALPHA(im), blend);
+                                    op, IM_FLAG_ISSET(im, F_HAS_ALPHA), blend);
    else
       __imlib_Polygon_FillToData(poly, color,
                                  im->data, im->w,
                                  clx, cly, clw, clh,
-                                 op, IMAGE_HAS_ALPHA(im), blend);
+                                 op, IM_FLAG_ISSET(im, F_HAS_ALPHA), blend);
 }
diff --git a/src/lib/rectangle.c b/src/lib/rectangle.c
index 3ffd083..9029389 100644
--- a/src/lib/rectangle.c
+++ b/src/lib/rectangle.c
@@ -145,12 +145,12 @@ __imlib_Rectangle_DrawToImage(int x, int y, int w, int h, 
DATA32 color,
    if ((clw < 1) || (clh < 1))
       return;
 
-   if (blend && IMAGE_HAS_ALPHA(im))
+   if (blend && IM_FLAG_ISSET(im, F_HAS_ALPHA))
       __imlib_build_pow_lut();
 
    __imlib_Rectangle_DrawToData(x, y, w, h, color,
                                 im->data, im->w, clx, cly, clw, clh,
-                                op, IMAGE_HAS_ALPHA(im), blend);
+                                op, IM_FLAG_ISSET(im, F_HAS_ALPHA), blend);
 }
 
 void
@@ -185,10 +185,10 @@ __imlib_Rectangle_FillToImage(int x, int y, int w, int h, 
DATA32 color,
    if ((clw < 1) || (clh < 1))
       return;
 
-   if (blend && IMAGE_HAS_ALPHA(im))
+   if (blend && IM_FLAG_ISSET(im, F_HAS_ALPHA))
       __imlib_build_pow_lut();
 
    __imlib_Rectangle_FillToData(x, y, w, h, color,
                                 im->data, im->w, clx, cly, clw, clh,
-                                op, IMAGE_HAS_ALPHA(im), blend);
+                                op, IM_FLAG_ISSET(im, F_HAS_ALPHA), blend);
 }
diff --git a/src/lib/x11_draw.c b/src/lib/x11_draw.c
index 340f4ff..bd49160 100644
--- a/src/lib/x11_draw.c
+++ b/src/lib/x11_draw.c
@@ -49,7 +49,7 @@ __imlib_CreatePixmapsForImage(Display * d, Drawable w, Visual 
* v, int depth,
      }
    if (m)
      {
-        if (IMAGE_HAS_ALPHA(im))
+        if (IM_FLAG_ISSET(im, F_HAS_ALPHA))
            mask = XCreatePixmap(d, w, dw, dh, 1);
         *m = mask;
      }
diff --git a/src/lib/x11_pixmap.c b/src/lib/x11_pixmap.c
index e8147ed..162ce04 100644
--- a/src/lib/x11_pixmap.c
+++ b/src/lib/x11_pixmap.c
@@ -272,7 +272,8 @@ __imlib_PixmapCacheSize(void)
         if (ip->references == 0)
           {
              /* if the image is invalid */
-             if ((ip->dirty) || ((ip->image) && 
(!(IMAGE_IS_VALID(ip->image)))))
+             if (ip->dirty ||
+                 (ip->image && IM_FLAG_ISSET(ip->image, F_INVALID)))
                {
                   __imlib_RemoveImagePixmapFromCache(ip);
                   __imlib_ConsumeImagePixmap(ip);
diff --git a/src/lib/x11_rend.c b/src/lib/x11_rend.c
index 22ea2c8..e29bc50 100644
--- a/src/lib/x11_rend.c
+++ b/src/lib/x11_rend.c
@@ -266,7 +266,7 @@ __imlib_RenderImage(Display * d, ImlibImage * im,
    ImlibBlendFunction  blender = NULL;
 
    blender = __imlib_GetBlendFunction(op, 1, 0,
-                                      (!(im->flags & F_HAS_ALPHA)), NULL);
+                                      !IM_FLAG_ISSET(im, F_HAS_ALPHA), NULL);
 
    /* dont do anything if we have a 0 widht or height image to render */
    if ((dw == 0) || (dh == 0))
@@ -314,7 +314,7 @@ __imlib_RenderImage(Display * d, ImlibImage * im,
    dh = abs(dh);
    ct = __imlib_GetContext(d, v, cm, depth);
    __imlib_RGBASetupContext(ct);
-   if ((blend) && (IMAGE_HAS_ALPHA(im)))
+   if (blend && IM_FLAG_ISSET(im, F_HAS_ALPHA))
      {
         back = malloc(dw * dh * sizeof(DATA32));
         if (!__imlib_GrabDrawableToRGBA
@@ -379,7 +379,7 @@ __imlib_RenderImage(Display * d, ImlibImage * im,
              /* scale the imagedata for this LINESIZE lines chunk of image 
data */
              if (antialias)
                {
-                  if (IMAGE_HAS_ALPHA(im))
+                  if (IM_FLAG_ISSET(im, F_HAS_ALPHA))
                      __imlib_ScaleAARGBA(scaleinfo, buf, ((sx * dw) / sw),
                                          ((sy * dh) / sh) + y,
                                          0, 0, dw, hh, dw, im->w);
diff --git a/src/modules/loaders/loader_argb.c 
b/src/modules/loaders/loader_argb.c
index 234ac80..e8e0bf0 100644
--- a/src/modules/loaders/loader_argb.c
+++ b/src/modules/loaders/loader_argb.c
@@ -75,7 +75,7 @@ load2(ImlibImage * im, int load_data)
    if (!IMAGE_DIMENSIONS_OK(im->w, im->h))
       goto quit;
 
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA, alpha);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, alpha);
 
    if (!load_data)
       QUIT_WITH_RC(LOAD_SUCCESS);
@@ -129,7 +129,7 @@ save(ImlibImage * im, ImlibProgressFunction progress, char 
progress_granularity)
    if (!f)
       return LOAD_FAIL;
 
-   if (im->flags & F_HAS_ALPHA)
+   if (IM_FLAG_ISSET(im, F_HAS_ALPHA))
       alpha = 1;
 
    fprintf(f, "ARGB %i %i %i\n", im->w, im->h, alpha);
diff --git a/src/modules/loaders/loader_bmp.c b/src/modules/loaders/loader_bmp.c
index 9afdec6..20c1d49 100644
--- a/src/modules/loaders/loader_bmp.c
+++ b/src/modules/loaders/loader_bmp.c
@@ -258,7 +258,7 @@ load2(ImlibImage * im, int load_data)
         goto quit;
      }
 
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA, amask);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, amask);
 
    imgsize = size - bfh_offset;
    D("w=%3d h=%3d bitcount=%d comp=%d imgsize=%d\n",
@@ -687,7 +687,7 @@ load2(ImlibImage * im, int load_data)
                {
                   pixel = *(unsigned short *)buffer_ptr;
 
-                  if (im->flags & F_HAS_ALPHA)
+                  if (IM_FLAG_ISSET(im, F_HAS_ALPHA))
                      a = SCALE(a, pixel);
                   else
                      a = 0xff;
@@ -736,7 +736,7 @@ load2(ImlibImage * im, int load_data)
                {
                   pixel = *(unsigned int *)buffer_ptr;
 
-                  if (im->flags & F_HAS_ALPHA)
+                  if (IM_FLAG_ISSET(im, F_HAS_ALPHA))
                      a = SCALE(a, pixel);
                   else
                      a = 0xff;
diff --git a/src/modules/loaders/loader_ff.c b/src/modules/loaders/loader_ff.c
index d9a9e52..22693ae 100644
--- a/src/modules/loaders/loader_ff.c
+++ b/src/modules/loaders/loader_ff.c
@@ -43,7 +43,7 @@ load2(ImlibImage * im, int load_data)
    if (!IMAGE_DIMENSIONS_OK(im->w, im->h))
       goto quit;
 
-   SET_FLAG(im->flags, F_HAS_ALPHA);
+   IM_FLAG_SET(im, F_HAS_ALPHA);
 
    if (!load_data)
       QUIT_WITH_RC(LOAD_SUCCESS);
diff --git a/src/modules/loaders/loader_gif.c b/src/modules/loaders/loader_gif.c
index 6bd31ff..72d849d 100644
--- a/src/modules/loaders/loader_gif.c
+++ b/src/modules/loaders/loader_gif.c
@@ -215,7 +215,7 @@ load2(ImlibImage * im, int load_data)
           }
      }
 
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA, transp >= 0);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, transp >= 0);
    im->frame_count = fcount;
    multiframe = im->frame_count > 1;
    if (multiframe)
diff --git a/src/modules/loaders/loader_heif.c 
b/src/modules/loaders/loader_heif.c
index 89b03ae..53434ab 100644
--- a/src/modules/loaders/loader_heif.c
+++ b/src/modules/loaders/loader_heif.c
@@ -84,10 +84,7 @@ load2(ImlibImage * im, int load_data)
       goto quit;
 
    img_has_alpha = heif_image_handle_has_alpha_channel(img_handle);
-   if (img_has_alpha)
-      SET_FLAG(im->flags, F_HAS_ALPHA);
-   else
-      UNSET_FLAG(im->flags, F_HAS_ALPHA);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, img_has_alpha);
 
    if (!load_data)
      {
diff --git a/src/modules/loaders/loader_ico.c b/src/modules/loaders/loader_ico.c
index 66c3643..dfbb5ce 100644
--- a/src/modules/loaders/loader_ico.c
+++ b/src/modules/loaders/loader_ico.c
@@ -139,6 +139,7 @@ ico_read_icon(ico_t * ico, int ino)
 {
    ie_t               *ie;
    unsigned int        size;
+
 #ifdef WORDS_BIGENDIAN
    unsigned int        nr;
 #endif
@@ -307,7 +308,7 @@ ico_load(ico_t * ico, ImlibImage * im, int load_data)
    im->w = w;
    im->h = h;
 
-   SET_FLAG(im->flags, F_HAS_ALPHA);
+   IM_FLAG_SET(im, F_HAS_ALPHA);
 
    if (!load_data)
       return 1;
diff --git a/src/modules/loaders/loader_jpeg.c 
b/src/modules/loaders/loader_jpeg.c
index fa5340a..3c513c2 100644
--- a/src/modules/loaders/loader_jpeg.c
+++ b/src/modules/loaders/loader_jpeg.c
@@ -115,7 +115,7 @@ load2(ImlibImage * im, int load_data)
         im->h = h;
      }
 
-   UNSET_FLAG(im->flags, F_HAS_ALPHA);
+   IM_FLAG_CLR(im, F_HAS_ALPHA);
 
    if (!load_data)
       QUIT_WITH_RC(LOAD_SUCCESS);
@@ -322,7 +322,7 @@ save(ImlibImage * im, ImlibProgressFunction progress, char 
progress_granularity)
 
    /* progressive */
    if ((tag = __imlib_GetTag(im, "interlacing")) && tag->val)
-       jpeg_simple_progression(&jcs);
+      jpeg_simple_progression(&jcs);
 
    jpeg_start_compress(&jcs, TRUE);
    /* get the start pointer */
diff --git a/src/modules/loaders/loader_lbm.c b/src/modules/loaders/loader_lbm.c
index bdff90f..4446ad9 100644
--- a/src/modules/loaders/loader_lbm.c
+++ b/src/modules/loaders/loader_lbm.c
@@ -489,13 +489,13 @@ load2(ImlibImage * im, int load_data)
 
    ilbm.mask = ilbm.bmhd.data[9];
 
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA, ilbm.mask || ilbm.depth == 32);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, ilbm.mask || ilbm.depth == 32);
 
    env = getenv("IMLIB2_LBM_NOMASK");
    if (env
        && (!strcmp(env, "true") || !strcmp(env, "1") || !strcmp(env, "yes")
            || !strcmp(env, "on")))
-      UNSET_FLAG(im->flags, F_HAS_ALPHA);
+      IM_FLAG_CLR(im, F_HAS_ALPHA);
 
    if (!load_data)
       QUIT_WITH_RC(LOAD_SUCCESS);
diff --git a/src/modules/loaders/loader_png.c b/src/modules/loaders/loader_png.c
index a395972..73874d0 100644
--- a/src/modules/loaders/loader_png.c
+++ b/src/modules/loaders/loader_png.c
@@ -154,7 +154,7 @@ info_callback(png_struct * png_ptr, png_info * info_ptr)
       hasa = 1;
    if (color_type == PNG_COLOR_TYPE_GRAY_ALPHA)
       hasa = 1;
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA, hasa);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, hasa);
 
    if (!ctx->load_data)
       QUIT_WITH_RC(LOAD_SUCCESS);
@@ -617,7 +617,7 @@ save(ImlibImage * im, ImlibProgressFunction progress, char 
progress_granularity)
      }
 
    png_init_io(png_ptr, f);
-   has_alpha = IMAGE_HAS_ALPHA(im);
+   has_alpha = IM_FLAG_ISSET(im, F_HAS_ALPHA);
    if (has_alpha)
      {
         png_set_IHDR(png_ptr, info_ptr, im->w, im->h, 8,
diff --git a/src/modules/loaders/loader_pnm.c b/src/modules/loaders/loader_pnm.c
index e506aab..2d3312b 100644
--- a/src/modules/loaders/loader_pnm.c
+++ b/src/modules/loaders/loader_pnm.c
@@ -189,7 +189,7 @@ load2(ImlibImage * im, int load_data)
    if (!IMAGE_DIMENSIONS_OK(w, h))
       goto quit;
 
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA, p == '8');
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, p == '8');
 
    if (!load_data)
       QUIT_WITH_RC(LOAD_SUCCESS);
@@ -493,7 +493,7 @@ save(ImlibImage * im, ImlibProgressFunction progress, char 
progress_granularity)
    ptr = im->data;
 
    /* if the image has a useful alpha channel */
-   if (im->flags & F_HAS_ALPHA)
+   if (IM_FLAG_ISSET(im, F_HAS_ALPHA))
      {
         fprintf(f, "P8\n" "# PNM File written by Imlib2\n" "%i %i\n" "255\n",
                 im->w, im->h);
diff --git a/src/modules/loaders/loader_svg.c b/src/modules/loaders/loader_svg.c
index afae530..4abebf4 100644
--- a/src/modules/loaders/loader_svg.c
+++ b/src/modules/loaders/loader_svg.c
@@ -153,7 +153,7 @@ load2(ImlibImage * im, int load_data)
    if (!IMAGE_DIMENSIONS_OK(im->w, im->h))
       goto quit;
 
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA, 1);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, 1);
 
    if (!load_data)
       QUIT_WITH_RC(LOAD_SUCCESS);
diff --git a/src/modules/loaders/loader_tga.c b/src/modules/loaders/loader_tga.c
index 29bb0f8..0912e38 100644
--- a/src/modules/loaders/loader_tga.c
+++ b/src/modules/loaders/loader_tga.c
@@ -189,7 +189,7 @@ load2(ImlibImage * im, int load_data)
    if (!IMAGE_DIMENSIONS_OK(im->w, im->h))
       goto quit;
 
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA, hasa);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, hasa);
 
    if (!load_data)
       QUIT_WITH_RC(LOAD_SUCCESS);
@@ -537,15 +537,15 @@ save(ImlibImage * im, ImlibProgressFunction progress, 
char progress_granularity)
    header.heightHi = im->h >> 8;
 
    /* total number of bits per pixel */
-   header.bpp = (im->flags & F_HAS_ALPHA) ? 32 : 24;
+   header.bpp = IM_FLAG_ISSET(im, F_HAS_ALPHA) ? 32 : 24;
    /* number of extra (alpha) bits per pixel */
-   header.descriptor = (im->flags & F_HAS_ALPHA) ? 8 : 0;
+   header.descriptor = IM_FLAG_ISSET(im, F_HAS_ALPHA) ? 8 : 0;
 
    /* top-to-bottom storage */
    header.descriptor |= TGA_DESC_VERTICAL;
 
    /* allocate a buffer to receive the BGRA-swapped pixel values */
-   buf = malloc(im->w * im->h * ((im->flags & F_HAS_ALPHA) ? 4 : 3));
+   buf = malloc(im->w * im->h * (IM_FLAG_ISSET(im, F_HAS_ALPHA) ? 4 : 3));
    if (!buf)
       goto quit;
 
@@ -566,7 +566,7 @@ save(ImlibImage * im, ImlibProgressFunction progress, char 
progress_granularity)
              *bufptr++ = PIXEL_B(pixel);
              *bufptr++ = PIXEL_G(pixel);
              *bufptr++ = PIXEL_R(pixel);
-             if (im->flags & F_HAS_ALPHA)
+             if (IM_FLAG_ISSET(im, F_HAS_ALPHA))
                 *bufptr++ = PIXEL_A(pixel);
           }                     /* end for (each pixel in row) */
 
@@ -579,7 +579,7 @@ save(ImlibImage * im, ImlibProgressFunction progress, char 
progress_granularity)
    fwrite(&header, sizeof(header), 1, f);
 
    /* write the image data */
-   fwrite(buf, 1, im->w * im->h * ((im->flags & F_HAS_ALPHA) ? 4 : 3), f);
+   fwrite(buf, 1, im->w * im->h * (IM_FLAG_ISSET(im, F_HAS_ALPHA) ? 4 : 3), f);
 
    rc = LOAD_SUCCESS;
 
diff --git a/src/modules/loaders/loader_tiff.c 
b/src/modules/loaders/loader_tiff.c
index cd99f99..95ea702 100644
--- a/src/modules/loaders/loader_tiff.c
+++ b/src/modules/loaders/loader_tiff.c
@@ -313,8 +313,8 @@ load2(ImlibImage * im, int load_data)
    if (!IMAGE_DIMENSIONS_OK(im->w, im->h))
       goto quit;
 
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA,
-               rgba_image.rgba.alpha != EXTRASAMPLE_UNSPECIFIED);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA,
+                  rgba_image.rgba.alpha != EXTRASAMPLE_UNSPECIFIED);
 
    if (!load_data)
       QUIT_WITH_RC(LOAD_SUCCESS);
@@ -374,7 +374,7 @@ save(ImlibImage * im, ImlibProgressFunction progress, char 
progress_granularity)
    double              alpha_factor;
    int                 x, y;
    uint8_t             r, g, b, a = 0;
-   int                 has_alpha = IMAGE_HAS_ALPHA(im);
+   int                 has_alpha = IM_FLAG_ISSET(im, F_HAS_ALPHA);
    int                 i;
 
    /* By default uses patent-free use COMPRESSION_DEFLATE,
diff --git a/src/modules/loaders/loader_webp.c 
b/src/modules/loaders/loader_webp.c
index f2286d1..f19c2e1 100644
--- a/src/modules/loaders/loader_webp.c
+++ b/src/modules/loaders/loader_webp.c
@@ -76,7 +76,7 @@ load2(ImlibImage * im, int load_data)
    if (!IMAGE_DIMENSIONS_OK(im->w, im->h))
       goto quit;
 
-   UPDATE_FLAG(im->flags, F_HAS_ALPHA, iter.has_alpha);
+   IM_FLAG_UPDATE(im, F_HAS_ALPHA, iter.has_alpha);
 
    if (!load_data)
       QUIT_WITH_RC(LOAD_SUCCESS);
diff --git a/src/modules/loaders/loader_xbm.c b/src/modules/loaders/loader_xbm.c
index 74d0a68..62a252c 100644
--- a/src/modules/loaders/loader_xbm.c
+++ b/src/modules/loaders/loader_xbm.c
@@ -153,7 +153,7 @@ load2(ImlibImage * im, int load_data)
                   if (!load_data)
                      QUIT_WITH_RC(LOAD_SUCCESS);
 
-                  UNSET_FLAG(im->flags, F_HAS_ALPHA);
+                  IM_FLAG_CLR(im, F_HAS_ALPHA);
 
                   header = 0;
 
diff --git a/src/modules/loaders/loader_xpm.c b/src/modules/loaders/loader_xpm.c
index 94a23b3..7a59d0d 100644
--- a/src/modules/loaders/loader_xpm.c
+++ b/src/modules/loaders/loader_xpm.c
@@ -362,7 +362,7 @@ load2(ImlibImage * im, int load_data)
                           qsort(cmap, ncolors, sizeof(cmap_t), xpm_cmap_sort);
                        context++;
 
-                       UPDATE_FLAG(im->flags, F_HAS_ALPHA, transp >= 0);
+                       IM_FLAG_UPDATE(im, F_HAS_ALPHA, transp >= 0);
 
                        if (!load_data)
                           QUIT_WITH_RC(LOAD_SUCCESS);

-- 


Reply via email to