diff -rupN a/src/modules/evas/loaders/gif/evas_image_load_gif.c b/src/modules/evas/loaders/gif/evas_image_load_gif.c
--- a/src/modules/evas/loaders/gif/evas_image_load_gif.c	2014-05-19 16:10:12.000000000 +0000
+++ b/src/modules/evas/loaders/gif/evas_image_load_gif.c	2014-06-01 11:05:50.963850389 +0000
@@ -528,7 +528,7 @@ evas_image_load_file_head_gif2(void *loa
    ret = EINA_TRUE;
 
 on_error: // jump here on any errors to clean up
-   if (gif) DGifCloseFile(gif);
+   if (gif) DGifCloseFile(gif, NULL);
    if (fi.map) eina_file_map_free(f, fi.map);
    return ret;
 }
@@ -606,7 +606,7 @@ open_file:
    // start as we have nothnig to build on
    if ((index > 0) && (index < loader->imgnum) && (animated->animated))
      {
-        if (loader->gif) DGifCloseFile(loader->gif);
+        if (loader->gif) DGifCloseFile(loader->gif, NULL);
         if ((loader->fi.map) && (loader->f))
           eina_file_map_free(loader->f, loader->fi.map);
         loader->gif = NULL;
@@ -764,7 +764,7 @@ open_file:
    loader->imgnum = imgnum;
    if ((animated->frame_count <= 1) || (rec == TERMINATE_RECORD_TYPE))
      {
-        if (loader->gif) DGifCloseFile(loader->gif);
+        if (loader->gif) DGifCloseFile(loader->gif, NULL);
         if ((loader->fi.map) && (loader->f))
           eina_file_map_free(loader->f, loader->fi.map);
         loader->gif = NULL;
@@ -848,7 +848,7 @@ static void
 evas_image_load_file_close_gif2(void *loader_data)
 {
    Loader_Info *loader = loader_data;
-   if (loader->gif) DGifCloseFile(loader->gif);
+   if (loader->gif) DGifCloseFile(loader->gif, NULL);
    if ((loader->fi.map) && (loader->f))
      eina_file_map_free(loader->f, loader->fi.map);
    free(loader);
