From b86362dd05652da43af9001b737c00a397824137 Mon Sep 17 00:00:00 2001 From: Mike Blumenkrantz Date: Fri, 17 Mar 2017 13:16:53 -0400 Subject: [PATCH] evas table: CRI when attempting to pack a table child into another table @fix --- src/lib/evas/canvas/evas_object_table.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/lib/evas/canvas/evas_object_table.c b/src/lib/evas/canvas/evas_object_table.c index 5eea6f9599..c062ef5bd7 100644 --- a/src/lib/evas/canvas/evas_object_table.c +++ b/src/lib/evas/canvas/evas_object_table.c @@ -1133,7 +1133,15 @@ _evas_table_pack(Eo *o, Evas_Table_Data *priv, Evas_Object *child, unsigned shor } opt = _evas_object_table_option_get(child); - if (!opt) + if (opt) + { + if (evas_object_smart_parent_get(child) != o) + { + CRI("cannot pack child of one table into another table!"); + return EINA_FALSE; + } + } + else { opt = malloc(sizeof(*opt)); if (!opt) @@ -1152,7 +1160,7 @@ _evas_table_pack(Eo *o, Evas_Table_Data *priv, Evas_Object *child, unsigned shor opt->end_col = col + colspan; opt->end_row = row + rowspan; - if (evas_object_smart_parent_get(child) == o) + if (!optalloc) { Eina_Bool need_shrink = EINA_FALSE;