Enlightenment CVS committal

Author  : raster
Project : e17
Module  : libs/evas

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


Modified Files:
        evas_outbuf.c 


Log Message:


cedric's cache changes patch

===================================================================
RCS file: /cvs/e/e17/libs/evas/src/modules/engines/software_xcb/evas_outbuf.c,v
retrieving revision 1.19
retrieving revision 1.20
diff -u -3 -r1.19 -r1.20
--- evas_outbuf.c       9 Mar 2008 13:21:15 -0000       1.19
+++ evas_outbuf.c       12 Apr 2008 00:32:28 -0000      1.20
@@ -508,24 +508,19 @@
        (buf->priv.mask.g == 0x00ff00) &&
        (buf->priv.mask.b == 0x0000ff))
      {
-       im = evas_cache_image_empty(evas_common_image_cache_get());
-       im->image->w = w;
-       im->image->h = h;
-       im->image->data = NULL;
-       im->image->no_free = 1;
+       im = (RGBA_Image *) 
evas_cache_image_empty(evas_common_image_cache_get());
+        if (!im) return NULL;
+        im = (RGBA_Image *) evas_cache_image_size_set(&im->cache_entry, w, h);
+        if (!im) return NULL;
+
        im->extended_info = obr;
        obr->xcbob = _find_xcbob(buf->priv.x.conn,
                                  buf->priv.x.depth,
                                  w, h,
                                  use_shm,
                                  NULL);
-/*     obr->xcbob = evas_software_xcb_x_output_buffer_new(buf->priv.x.conn, */
-/*                                                        buf->priv.x.depth, */
-/*                                                        w, */
-/*                                                        h, */
-/*                                                        use_shm, */
-/*                                                        NULL); */
-       im->image->data = (DATA32 
*)evas_software_xcb_x_output_buffer_data(obr->xcbob, &bpl);
+        im->image.no_free = 1;
+       im->image.data = (DATA32 
*)evas_software_xcb_x_output_buffer_data(obr->xcbob, &bpl);
        if (buf->priv.x.mask)
          obr->mxcbob = _find_xcbob(buf->priv.x.conn,
                                     1, w, h,
@@ -541,9 +536,8 @@
    else
      {
         im = evas_cache_image_empty(evas_common_image_cache_get());
-       im->image->w = w;
-       im->image->h = h;
-        evas_common_image_surface_alloc(im->image);
+        if (!im) return NULL;
+        evas_cache_image_surface_alloc(&im->cache_entry, w, h);
        im->extended_info = obr;
        if ((buf->rot == 0) || (buf->rot == 180))
          obr->xcbob = _find_xcbob(buf->priv.x.conn,
@@ -585,7 +579,7 @@
      {
        im->flags |= RGBA_IMAGE_HAS_ALPHA;
        /* FIXME: faster memset! */
-       memset(im->image->data, 0, w * h * sizeof(DATA32));
+       memset(im->image.data, 0, w * h * sizeof(DATA32));
      }
    buf->priv.pending_writes = evas_list_append(buf->priv.pending_writes, im);
    return im;
@@ -832,7 +826,7 @@
    if (!conv_func) return;
 
    data = evas_software_xcb_x_output_buffer_data(obr->xcbob, &bpl);
-   src_data = update->image->data;
+   src_data = update->image.data;
    if (buf->rot == 0)
      {
        obr->x = x;



-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to