summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJean-Philippe Andre <jp.andre@samsung.com>2015-04-13 20:29:05 +0900
committerJean-Philippe Andre <jp.andre@samsung.com>2015-04-13 20:30:27 +0900
commit5d3a8195ca19c6d1d53f4dcb8421a9762d6941fe (patch)
tree496fbf34eeee14246e6fb7d32c312d35e99d7d6f
parent8d809c6c9b3310619e3132c11efc1c6738ef308f (diff)
downloadelementary-5d3a8195ca19c6d1d53f4dcb8421a9762d6941fe.tar.gz
elm_image: Do not open file again if already opening (async)
-rw-r--r--src/lib/elm_image.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/lib/elm_image.c b/src/lib/elm_image.c
index b0db368bb..55f0b36e8 100644
--- a/src/lib/elm_image.c
+++ b/src/lib/elm_image.c
@@ -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);