aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCedric Bail <cedric@osg.samsung.com>2018-03-19 16:38:07 -0700
committerCedric Bail <cedric@osg.samsung.com>2018-03-19 16:38:07 -0700
commit21164b5a56f2ff0fbe8e60f85f7070212cbdfe38 (patch)
tree0858ff1b84eae79303d9f569697450319f082a3a
parentelementary: make sure windows are not born orfan and properly have at least a... (diff)
downloadefl-21164b5a56f2ff0fbe8e60f85f7070212cbdfe38.tar.gz
eo: automatically cancel a future that is attached to an invalidated object.
-rw-r--r--src/lib/eo/eo_base_class.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/lib/eo/eo_base_class.c b/src/lib/eo/eo_base_class.c
index 5fd47c4689..872ae3c16b 100644
--- a/src/lib/eo/eo_base_class.c
+++ b/src/lib/eo/eo_base_class.c
@@ -1983,6 +1983,7 @@ efl_future_cb_from_desc(Eo *o, const Efl_Future_Cb_Desc desc)
EINA_SAFETY_ON_NULL_GOTO(o, end);
pd = efl_data_scope_get(o, EFL_OBJECT_CLASS);
EINA_SAFETY_ON_NULL_GOTO(pd, end);
+ if (pd->invalidate) goto end;
pending = _efl_pending_future_new();
EINA_SAFETY_ON_NULL_GOTO(pending, end);
memcpy(&pending->desc, &desc, sizeof(Efl_Future_Cb_Desc));