evas image cache: notify preload for image objects without explicit callbacks
authorMike Blumenkrantz <zmike@osg.samsung.com>
Wed, 23 Aug 2017 18:24:11 +0000 (14:24 -0400)
committerMike Blumenkrantz <zmike@osg.samsung.com>
Fri, 25 Aug 2017 18:48:12 +0000 (14:48 -0400)
non-gl images do not have an explicit callback and so the preload inform callback
must be triggered manually for all cases

fix T5200

src/lib/evas/cache/evas_cache_image.c

index ec44a21..138aff8 100644 (file)
@@ -1466,22 +1466,7 @@ evas_cache_image_preload_data(Image_Entry *im, const Eo *target,
        (((im->flags.loaded) && (img->image.data)) ||
         (im->flags.textured && !im->flags.updated_data)))
      {
-        Evas_Cache_Target *tmp;
-
-        while ((tmp = im->targets))
-          {
-             im->targets = (Evas_Cache_Target *)
-               eina_inlist_remove(EINA_INLIST_GET(im->targets),
-                                  EINA_INLIST_GET(im->targets));
-             if (tmp->simple_cb)
-               {
-                  if (!tmp->delete_me)
-                    {
-                       tmp->simple_cb(tmp->simple_data);
-                    }
-               }
-             free(tmp);
-          }
+        _evas_cache_image_preloaded_notify(im);
         evas_object_inform_call_image_preloaded((Evas_Object*)target);
         evas_cache_image_drop(im);
         return;