eo: do not return efl_invalidated true when its not true
authorMarcel Hollerbach <mail@marcel-hollerbach.de>
Tue, 29 May 2018 04:38:51 +0000 (21:38 -0700)
committerWonki Kim <wonki_.kim@samsung.com>
Fri, 1 Jun 2018 05:17:53 +0000 (14:17 +0900)
Summary:
the object is invalidated AFTER the parent is lost, (thats what the doc
says). Returning invalidated as true when the parent is still present is
thus not correctly.

Depends on D6222

Reviewers: cedric, zmike, JackDanielZ

Subscribers: cedric, #committers, zmike

Tags: #efl

Differential Revision: https://phab.enlightenment.org/D6223

Reviewed-by: Cedric BAIL <cedric.bail@free.fr>
src/lib/eo/eo_base_class.c

index 815d6ba..e57a245 100644 (file)
@@ -815,7 +815,7 @@ _efl_object_invalidated_get(const Eo *obj_id, Efl_Object_Data *pd)
 {
    Eina_Bool invalidate;
    EO_OBJ_POINTER_RETURN_VAL(obj_id, obj, EINA_TRUE);
-   invalidate = obj->invalidate || obj->is_invalidating;
+   invalidate = obj->invalidate;
    EO_OBJ_DONE(obj_id);
    if (!invalidate && pd && pd->parent)
      return efl_invalidated_get(pd->parent);