Enlightenment CVS committal

Author  : cedric
Project : e17
Module  : libs/evas

Dir     : e17/libs/evas/src/modules/engines/software_x11


Modified Files:
        evas_outbuf.c 


Log Message:
        * Make RGBA_IMAGE_HAS_ALPHA and RGBA_IMAGE_ALPHA_SPARSE part of
        Image_Entry flag structure. This fix a bug with 16 bpp software engine.

        * Change image loader module API to take any Image_Entry. Same goes
        for evas_common_image_premul and evas_common_image_set_alpha_sparse.

        * Use new eet API: eet_data_image_read_to_surface.


===================================================================
RCS file: /cvs/e/e17/libs/evas/src/modules/engines/software_x11/evas_outbuf.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -3 -r1.19 -r1.20
--- evas_outbuf.c       12 Apr 2008 00:32:28 -0000      1.19
+++ evas_outbuf.c       3 Jun 2008 09:09:37 -0000       1.20
@@ -125,7 +125,7 @@
        im = buf->priv.pending_writes->data;
        buf->priv.pending_writes = 
evas_list_remove_list(buf->priv.pending_writes, buf->priv.pending_writes);
        obr = im->extended_info;
-       evas_cache_image_drop(im);
+       evas_cache_image_drop(&im->cache_entry);
        if (obr->xob) _unfind_xob(obr->xob, 0);
        if (obr->mxob) _unfind_xob(obr->mxob, 0);
        free(obr);
@@ -407,7 +407,7 @@
        else
          {
             im = (RGBA_Image *) 
evas_cache_image_empty(evas_common_image_cache_get());
-             im->flags |= alpha ? RGBA_IMAGE_HAS_ALPHA : 0;
+             im->cache_entry.flags.alpha |= alpha ? 1 : 0;
              evas_cache_image_surface_alloc(&im->cache_entry, buf->w, buf->h);
             im->extended_info = obr;
             if ((buf->rot == 0) || (buf->rot == 180))
@@ -497,7 +497,7 @@
    else
      {
         im = (RGBA_Image *) 
evas_cache_image_empty(evas_common_image_cache_get());
-        im->flags |= alpha ? RGBA_IMAGE_HAS_ALPHA : 0;
+        im->cache_entry.flags.alpha |= alpha ? 1 : 0;
         evas_cache_image_surface_alloc(&im->cache_entry, w, h);
        im->extended_info = obr;
        if ((buf->rot == 0) || (buf->rot == 180))
@@ -637,7 +637,7 @@
               evas_list_remove_list(buf->priv.prev_pending_writes, 
                                     buf->priv.prev_pending_writes);
             obr = im->extended_info;
-            evas_cache_image_drop(im);
+            evas_cache_image_drop(&im->cache_entry);
             if (obr->xob) _unfind_xob(obr->xob, 0);
             if (obr->mxob) _unfind_xob(obr->mxob, 0);
 /*          
@@ -682,7 +682,7 @@
             im = evas_list_data(buf->priv.pending_writes);
             buf->priv.pending_writes = 
evas_list_remove_list(buf->priv.pending_writes, buf->priv.pending_writes);
             obr = im->extended_info;
-            evas_cache_image_drop(im);
+            evas_cache_image_drop(&im->cache_entry);
             if (obr->xob) _unfind_xob(obr->xob, 0);
             if (obr->mxob) _unfind_xob(obr->mxob, 0);
 /*          
@@ -726,7 +726,7 @@
               evas_list_remove_list(buf->priv.prev_pending_writes, 
                                     buf->priv.prev_pending_writes);
             obr = im->extended_info;
-            evas_cache_image_drop(im);
+            evas_cache_image_drop(&im->cache_entry);
             if (obr->xob) _unfind_xob(obr->xob, 0);
             if (obr->mxob) _unfind_xob(obr->mxob, 0);
             free(obr);



-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to