summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2013-09-24 18:46:17 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2013-10-28 11:09:27 +0900
commit81ec95eb4250d3a303fc0f09f45e7710c18464f0 (patch)
tree30183bbcc19c3c8d5111b8aec69792b569893c92
parentc1ab8f112bebfa8b25648e4290b1a49003f098fa (diff)
downloadefl-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.c5
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;
}