diff --git a/legacy/evas/src/lib/canvas/evas_object_image.c b/legacy/evas/src/lib/canvas/evas_object_image.c index 889a562304..9d279860ee 100644 --- a/legacy/evas/src/lib/canvas/evas_object_image.c +++ b/legacy/evas/src/lib/canvas/evas_object_image.c @@ -1007,10 +1007,10 @@ evas_object_image_preload(Evas_Object *obj, Eina_Bool cancel) { if (!o->preloading) { + o->preloading = 1; obj->layer->evas->engine.func->image_data_preload_request(obj->layer->evas->engine.data.output, o->engine_data, obj); - o->preloading = 1; } } } @@ -3420,6 +3420,10 @@ Eina_Bool _evas_object_image_preloading_get(const Evas_Object *obj) { Evas_Object_Image *o = (Evas_Object_Image *)(obj->object_data); + if (!o) return EINA_FALSE; + MAGIC_CHECK(o, Evas_Object_Image, MAGIC_OBJ_IMAGE); + return EINA_FALSE; + MAGIC_CHECK_END(); return o->preloading; } diff --git a/legacy/evas/src/lib/canvas/evas_object_inform.c b/legacy/evas/src/lib/canvas/evas_object_inform.c index 25d3391aa5..f22b6f04e9 100644 --- a/legacy/evas/src/lib/canvas/evas_object_inform.c +++ b/legacy/evas/src/lib/canvas/evas_object_inform.c @@ -61,11 +61,11 @@ void evas_object_inform_call_image_preloaded(Evas_Object *obj) { if (!_evas_object_image_preloading_get(obj)) return; + _evas_object_image_preloading_set(obj, 0); _evas_object_event_new(); evas_object_event_callback_call(obj, EVAS_CALLBACK_IMAGE_PRELOADED, NULL); _evas_post_event_callback_call(obj->layer->evas); - _evas_object_image_preloading_set(obj, 0); } void