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
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs