summaryrefslogtreecommitdiff
path: root/src/lib/evas/canvas/evas_object_table.c
diff options
context:
space:
mode:
authorCarsten Haitzler (Rasterman) <raster@rasterman.com>2014-04-10 16:44:58 +0900
committerCarsten Haitzler (Rasterman) <raster@rasterman.com>2014-04-10 16:44:58 +0900
commit059aba7c37ba95b4306272190e7582cf419a9d19 (patch)
tree37abfc6dd9fd4d94b6777ad618e6a531d6003532 /src/lib/evas/canvas/evas_object_table.c
parentf921af0cb5d9882805fc92d58f4883dc09461515 (diff)
fix invalid memory access where child cb frees table cache - new it seems
i havent seen this before so i would not cal lit an old bug that needs a fix tag
Diffstat (limited to 'src/lib/evas/canvas/evas_object_table.c')
-rw-r--r--src/lib/evas/canvas/evas_object_table.c15
1 files changed, 9 insertions, 6 deletions
diff --git a/src/lib/evas/canvas/evas_object_table.c b/src/lib/evas/canvas/evas_object_table.c
index 920dda2..42796bc 100644
--- a/src/lib/evas/canvas/evas_object_table.c
+++ b/src/lib/evas/canvas/evas_object_table.c
@@ -861,13 +861,16 @@ _evas_object_table_calculate_layout_regular(Evas_Object *o, Evas_Table_Data *pri
861 } 861 }
862 862
863 end: 863 end:
864 if (cols != c->sizes.h) 864 if (priv->cache)
865 {
866 if (cols) free(cols);
867 }
868 if (rows != c->sizes.v)
869 { 865 {
870 if (rows) free(rows); 866 if (cols != c->sizes.h)
867 {
868 if (cols) free(cols);
869 }
870 if (rows != c->sizes.v)
871 {
872 if (rows) free(rows);
873 }
871 } 874 }
872} 875}
873 876