diff options
author | Jean-Philippe Andre <jp.andre@samsung.com> | 2013-09-24 18:46:17 +0900 |
---|---|---|
committer | Jean-Philippe Andre <jp.andre@samsung.com> | 2013-10-28 11:09:27 +0900 |
commit | 81ec95eb4250d3a303fc0f09f45e7710c18464f0 (patch) | |
tree | 30183bbcc19c3c8d5111b8aec69792b569893c92 | |
parent | c1ab8f112bebfa8b25648e4290b1a49003f098fa (diff) | |
download | efl-81ec95eb4250d3a303fc0f09f45e7710c18464f0.tar.gz |
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.
-rw-r--r-- | src/bin/evas/evas_cserve2_cache.c | 5 |
1 files 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; } |