From 9d945dd593eb5b00e8b844c2dc773e37dbf0c12b Mon Sep 17 00:00:00 2001 From: Carsten Haitzler Date: Wed, 11 May 2011 11:26:51 +0000 Subject: [PATCH] fix svg load WITH scaling - scale down size request broken. 2 different sizing methods. SVN revision: 59329 --- .../evas/src/modules/loaders/svg/evas_image_load_svg.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/legacy/evas/src/modules/loaders/svg/evas_image_load_svg.c b/legacy/evas/src/modules/loaders/svg/evas_image_load_svg.c index e5f09330b9..3847481264 100644 --- a/legacy/evas/src/modules/loaders/svg/evas_image_load_svg.c +++ b/legacy/evas/src/modules/loaders/svg/evas_image_load_svg.c @@ -110,11 +110,8 @@ evas_image_load_file_head_svg(Image_Entry *ie, const char *file, const char *key h2 = (ie->load_opts.w * h) / w; if (h2 > ie->load_opts.h) { - unsigned int w3; h2 = ie->load_opts.h; - w3 = (ie->load_opts.h * w) / h; - if (w3 > w2) - w2 = w3; + w2 = (ie->load_opts.h * w) / h; } w = w2; h = h2; @@ -198,6 +195,11 @@ evas_image_load_file_data_svg(Image_Entry *ie, const char *file, const char *key } if (w < 1) w = 1; if (h < 1) h = 1; + if ((w != (int)ie->w) || (h != (int)ie->h)) + { + *error = EVAS_LOAD_ERROR_GENERIC; + goto error; + } ie->flags.alpha = 1; evas_cache_image_surface_alloc(ie, w, h); pixels = evas_cache_image_pixels(ie);