elm_image: Do not open file again if already opening (async)
authorJean-Philippe Andre <jp.andre@samsung.com>
Mon, 13 Apr 2015 11:29:05 +0000 (20:29 +0900)
committerJean-Philippe Andre <jp.andre@samsung.com>
Mon, 13 Apr 2015 11:30:27 +0000 (20:30 +0900)
src/lib/elm_image.c

index b0db368..55f0b36 100644 (file)
@@ -418,6 +418,13 @@ _elm_image_async_file_set(Eo *obj, Elm_Image_Data *sd,
    Async_Open_Data *todo;
    Eina_Bool was_running;
 
+   if (sd->async_opening &&
+       ((file == sd->async.file) ||
+        (file && sd->async.file && !strcmp(file, sd->async.file))) &&
+       ((key == sd->async.key) ||
+        (key && sd->async.key && !strcmp(key, sd->async.key))))
+     return EINA_TRUE;
+
    sd->async_opening = EINA_TRUE;
    eina_stringshare_replace(&sd->async.file, file);
    eina_stringshare_replace(&sd->async.key, key);