evas: fix bug when array was reallocated during walk.
authorcedric <cedric@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 20 Jul 2011 11:22:01 +0000 (11:22 +0000)
committercedric <cedric@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Wed, 20 Jul 2011 11:22:01 +0000 (11:22 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/evas@61523 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/canvas/evas_object_smart.c

index d7e7d2c..6907d30 100644 (file)
@@ -614,10 +614,11 @@ evas_call_smarts_calculate(Evas *e)
 
    e->in_smart_calc++;
    calculate = &e->calculate_objects;
-   EINA_ARRAY_ITER_NEXT(calculate, i, obj, it)
+   for (i = 0; i < eina_array_count_get(calculate); ++i)
      {
         Evas_Object_Smart *o;
 
+       obj = eina_array_data_get(calculate, i);
         if (obj->delete_me)
           continue;