HomePhabricator

evas_object_image: render_post returns if preloading.

Authored by kimcinoo on Feb 20 2019, 10:57 PM.

Description

evas_object_image: render_post returns if preloading.

The render_post calls evas_object_change if o->changed is true which is added
by commit "36fc2e6 evas image: fix non-rendered preload image.".
But an image could lose chance to render. Please refer to the following.

(1) 1st render_updates_internal

render_post - evas_object_change for image and its parents
evas_object_reset - for its parent

(2) _evas_image_load_post_update - o->preload is changed to true here

(3) 2nd render_updates_internal

evas_render_mapped cannot call render

The reason of (3) would be unchanged parents.

If render_post returns if an image is preloading, then evas_object_change works
for the image and its parents at (2). And finally (3) will call render.
It would be reasonable because render_pre, and render returns as well.

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
Differential Revision: https://phab.enlightenment.org/D7973

Details

Committed
cedricFeb 21 2019, 11:12 AM
Differential Revision
D7973: evas_object_image: render_post returns if preloading.
Parents
rEFLe7e62c54cd42: eio: fix a potentional BOF problem
Branches
Unknown
Tags
Unknown