From: Enlightenment C. <no...@cv...> - 2006-12-19 14:12:47
|
Enlightenment CVS committal Author : raster Project : e17 Module : libs/evas Dir : e17/libs/evas/src/modules/engines/software_generic 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/software_generic/evas_engine.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- evas_engine.c 17 Dec 2006 16:46:30 -0000 1.14 +++ evas_engine.c 19 Dec 2006 14:12:40 -0000 1.15 @@ -361,6 +361,7 @@ { RGBA_Image *im; + if (!image) return NULL; im = image; if (im->cs.space != EVAS_COLORSPACE_ARGB8888) { @@ -414,6 +415,7 @@ { RGBA_Image *im; + if (!image) return NULL; im = image; return im->info.comment; } @@ -429,6 +431,7 @@ { RGBA_Image *im; + if (!image) return; im = image; if (im->cs.space == cspace) return; switch (cspace) @@ -600,6 +603,7 @@ static void * eng_image_dirty_region(void *data, void *image, int x, int y, int w, int h) { + if (!image) return NULL; evas_common_image_dirty(image); evas_common_image_colorspace_dirty(image); return image; @@ -610,6 +614,11 @@ { RGBA_Image *im; + if (!image) + { + *image_data = NULL; + return NULL; + } im = image; evas_common_load_image_data_from_file(im); switch (im->cs.space) @@ -650,6 +659,7 @@ { RGBA_Image *im, *im2; + if (!image) return NULL; im = image; switch (im->cs.space) { @@ -691,6 +701,7 @@ { RGBA_Image *im; + if (!image) return; im = image; if (im->cs.space == EVAS_COLORSPACE_ARGB8888) evas_common_load_image_data_from_file(im); |