From c5ecf6e5d1f0c43cce569898cb477825b3c88b58 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Andre Date: Tue, 24 Sep 2013 18:46:17 +0900 Subject: [PATCH] evas/cserve2: Fix scaling options Be more careful when selecting the original image for scaling. Most load opts must remain the same, only smooth can be toyed with. Also, fix alpha when scaling. --- src/bin/evas/evas_cserve2_cache.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/bin/evas/evas_cserve2_cache.c b/src/bin/evas/evas_cserve2_cache.c index d0589dd4b8..87ea2d237b 100644 --- a/src/bin/evas/evas_cserve2_cache.c +++ b/src/bin/evas/evas_cserve2_cache.c @@ -842,6 +842,7 @@ _scaling_do(Shm_Handle *scale_shm, Image_Data *idata, Image_Entry *original) 0, 0, idata->opts.scale_load.dst_w, idata->opts.scale_load.dst_h); + idata->alpha = orig_idata->alpha; cserve2_rgba_image_scale_do( src_data, orig_idata->w, orig_idata->h, dst_data, @@ -2721,10 +2722,10 @@ try_again: goto do_scaling; } - if (first_attempt) + if (first_attempt && unscaled.scale_load.smooth) { first_attempt = EINA_FALSE; - memset(&unscaled, 0, sizeof(unscaled)); + unscaled.scale_load.smooth = 0; goto try_again; }