hermet pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=0b28f9df54a7b95d9f5275f23a36c23bc71b6f5a
commit 0b28f9df54a7b95d9f5275f23a36c23bc71b6f5a Author: JunsuChoi <[email protected]> Date: Mon Apr 27 19:29:47 2020 +0900 efl_ui_image: Fix unnecessary unload of memfile_set. Summary: In D11392, fixed to call file_unload when doing memfile_set. Therefore, "load,error" callback was called while unloading object that was not loaded when first load with memfile_set. So fix it to avoid unnecessary unloading. Test Plan: {F3871804} cp ./test_imge.c ./efl/ cd efl gcc -o test_image test_image.c -g `pkg-config --cflags --libs elementary` ./test_image Loading image... Async file load failed. Image is ready to show. Reviewers: Hermet, kimcinoo, herb Reviewed By: Hermet Subscribers: cedric, #reviewers, #committers, zmike Tags: #efl Differential Revision: https://phab.enlightenment.org/D11758 --- src/lib/elementary/efl_ui_image.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib/elementary/efl_ui_image.c b/src/lib/elementary/efl_ui_image.c index 1ba7fe5037..7cb96970b0 100644 --- a/src/lib/elementary/efl_ui_image.c +++ b/src/lib/elementary/efl_ui_image.c @@ -2480,7 +2480,10 @@ elm_image_memfile_set(Evas_Object *obj, const void *img, size_t size, const char EFL_UI_IMAGE_CHECK(obj) EINA_FALSE; EFL_UI_IMAGE_DATA_GET(obj, sd); - efl_file_unload(obj); + if (efl_file_loaded_get(obj)) + efl_file_unload(obj); + else + _efl_ui_image_file_set_do(obj); evas_object_image_memfile_set (sd->img, (void *)img, size, (char *)format, (char *)key); --
