raster pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=059aba7c37ba95b4306272190e7582cf419a9d19

commit 059aba7c37ba95b4306272190e7582cf419a9d19
Author: Carsten Haitzler (Rasterman) <[email protected]>
Date:   Thu Apr 10 16:44:58 2014 +0900

    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
---
 src/lib/evas/canvas/evas_object_table.c | 15 +++++++++------
 1 file 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
      }
 
  end:
-   if (cols != c->sizes.h)
-     {
-        if (cols) free(cols);
-     }
-   if (rows != c->sizes.v)
+   if (priv->cache)
      {
-        if (rows) free(rows);
+        if (cols != c->sizes.h)
+          {
+             if (cols) free(cols);
+          }
+        if (rows != c->sizes.v)
+          {
+             if (rows) free(rows);
+          }
      }
 }
 

-- 


Reply via email to