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.
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,
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;
}