diff --git a/ChangeLog b/ChangeLog index d71b13c342..e3fba574fb 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2013-03-04 Cedric Bail + + * Evas: fix crash with Buffer engine with non alpha output. + 2013-03-30 Cedric Bail * Evil: Add mkdtemp. diff --git a/NEWS b/NEWS index 67e6c2a742..d3605ccabf 100644 --- a/NEWS +++ b/NEWS @@ -219,3 +219,4 @@ Fixes: * Ecore_x: fix alpha set function not clear sync counter * Fix evas word start/end find in textblock to be consistent with other toolkit logic on the matter * Fix edje entry to respect filters and if input filtered out, don't clear selections + * Fix evas buffer engine allocation with non alpha output diff --git a/src/modules/evas/engines/buffer/evas_outbuf.c b/src/modules/evas/engines/buffer/evas_outbuf.c index fc1ffba937..58ce0e6784 100644 --- a/src/modules/evas/engines/buffer/evas_outbuf.c +++ b/src/modules/evas/engines/buffer/evas_outbuf.c @@ -121,13 +121,14 @@ evas_buffer_outbuf_buf_new_region_for_update(Outbuf *buf, int x, int y, int w, i ((buf->depth == OUTBUF_DEPTH_BGRA_32BPP_8888_8888))) { im->cache_entry.flags.alpha = 1; -#ifdef EVAS_CSERVE2 - if (evas_cserve2_use_get()) - evas_cache2_image_size_set(&im->cache_entry, w, h); - else -#endif - im = (RGBA_Image *) evas_cache_image_size_set(&im->cache_entry, w, h); } + +#ifdef EVAS_CSERVE2 + if (evas_cserve2_use_get()) + evas_cache2_image_size_set(&im->cache_entry, w, h); + else +#endif + im = (RGBA_Image *) evas_cache_image_size_set(&im->cache_entry, w, h); } } return im;