Enlightenment CVS committal Author : raster Project : e17 Module : libs/evas
Dir : e17/libs/evas/src/modules/engines/gl_x11 Modified Files: evas_engine.c Log Message: fix color modulation for gl surfaces. also fix segvs tat can happen. xrender engine is behind now though. can't do yuv surfaces (yet) =================================================================== RCS file: /cvs/e/e17/libs/evas/src/modules/engines/gl_x11/evas_engine.c,v retrieving revision 1.19 retrieving revision 1.20 diff -u -3 -r1.19 -r1.20 --- evas_engine.c 17 Dec 2006 16:46:30 -0000 1.19 +++ evas_engine.c 19 Dec 2006 14:12:40 -0000 1.20 @@ -496,6 +496,7 @@ Evas_GL_Image *im; re = (Render_Engine *)data; + if (!image) return NULL; eng_window_use(re->win); im = image; /* FIXME: can move to gl_common */ @@ -546,6 +547,7 @@ Evas_GL_Image *im; re = (Render_Engine *)data; + if (!image) return NULL; im = image; return im->im->info.comment; } @@ -568,6 +570,7 @@ Evas_GL_Image *im; re = (Render_Engine *)data; + if (!image) return; im = image; /* FIXME: can move to gl_common */ if (im->cs.space == cspace) return; @@ -651,6 +654,7 @@ Render_Engine *re; re = (Render_Engine *)data; + if (!image) return; eng_window_use(re->win); evas_gl_common_image_free(image); } @@ -661,6 +665,12 @@ Render_Engine *re; re = (Render_Engine *)data; + if (!image) + { + *w = 0; + *h = 0; + return; + } if (w) *w = ((Evas_GL_Image *)image)->im->image->w; if (h) *h = ((Evas_GL_Image *)image)->im->image->h; } @@ -672,8 +682,8 @@ Evas_GL_Image *im, *im_old; re = (Render_Engine *)data; - eng_window_use(re->win); if (!image) return NULL; + eng_window_use(re->win); im_old = image; if ((im_old) && (im_old->im->image->w == w) && (im_old->im->image->h == h)) return image; @@ -703,6 +713,7 @@ Render_Engine *re; re = (Render_Engine *)data; + if (!image) return NULL; evas_gl_common_image_dirty(image); return image; } @@ -714,6 +725,11 @@ Evas_GL_Image *im; re = (Render_Engine *)data; + if (!image) + { + *image_data = NULL; + return NULL; + } im = image; eng_window_use(re->win); evas_common_load_image_data_from_file(im->im); @@ -759,6 +775,7 @@ Evas_GL_Image *im, *im2; re = (Render_Engine *)data; + if (!image) return NULL; im = image; eng_window_use(re->win); switch (im->cs.space) @@ -803,6 +820,7 @@ Render_Engine *re; re = (Render_Engine *)data; + if (!image) return; eng_window_use(re->win); re->win->gl_context->dc = context; evas_gl_common_image_draw(re->win->gl_context, image, ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys - and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs