From ae4bcf423276602347da40f5f215b7dd54097177 Mon Sep 17 00:00:00 2001 From: jypark Date: Wed, 1 Aug 2012 04:33:12 +0000 Subject: [PATCH] Gif loader didn't initialize frame buffer of first frame. fix gif loader to initialize first frame's image data area git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@74704 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33 --- ChangeLog | 6 +++++- src/modules/loaders/gif/evas_image_load_gif.c | 4 ++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/ChangeLog b/ChangeLog index dbd1dca..f1dcfb3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -924,6 +924,10 @@ its children dont change their layer value and pointer with it, thus getting layer from them get you the wrong one. -2012-07026 Cedric Bail +2012-07-26 Cedric Bail * Keep track of inactive proxied object change so we always update the proxy correctly. + +2012-08-01 Jiyoun Park(jypark) + + * Fix gif load bug. we initialize first frame buffer of gif loader diff --git a/src/modules/loaders/gif/evas_image_load_gif.c b/src/modules/loaders/gif/evas_image_load_gif.c index b189837..18a6e23 100644 --- a/src/modules/loaders/gif/evas_image_load_gif.c +++ b/src/modules/loaders/gif/evas_image_load_gif.c @@ -265,6 +265,7 @@ _evas_image_load_frame_image_data(Image_Entry *ie, GifFileType *gif, Image_Entry return EINA_FALSE; } } + if (scale_ratio > 1) { tmp = malloc(w * sizeof(GifPixelType)); @@ -322,6 +323,7 @@ _evas_image_load_frame_image_data(Image_Entry *ie, GifFileType *gif, Image_Entry if (tmp) free(tmp); tmp = NULL; } + alpha = gif_frame->frame_info.transparent; siz = cache_w *cache_h * sizeof(DATA32); frame->data = malloc(siz); @@ -506,6 +508,8 @@ _evas_image_load_frame_image_data(Image_Entry *ie, GifFileType *gif, Image_Entry } else /* first frame decoding */ { + memset(ptr, 0, siz); + /* fill background color */ for (i = 0; i < cache_h; i++) { -- 2.7.4