elementary: safely manipulate inlist and destroy part of it.
authorCedric BAIL <cedric.bail@free.fr>
Mon, 10 Dec 2012 08:18:25 +0000 (08:18 +0000)
committerCedric BAIL <cedric.bail@free.fr>
Mon, 10 Dec 2012 08:18:25 +0000 (08:18 +0000)
SVN revision: 80579

legacy/elementary/ChangeLog
legacy/elementary/NEWS
legacy/elementary/src/lib/elm_transit.c

index 8117123..5a8b282 100644 (file)
 
        * Make sure private data is not NULL in elm_interface_scrollable.
        * Correctly handle failure case in _x11_notify_handler_image.
+       * Fix missuse of EINA_INLIST_FOREACH in elm_transit.c.
index 08b3dd2..69b0f16 100644 (file)
@@ -88,6 +88,7 @@ Fixes:
    * Fix focus problem in multibuttonentry. Entry can get focus only when multibuttonentry is focused.
    * Make sure private data is not NULL in elm_interface_scrollable.
    * Correctly handle failure case in _x11_notify_handler_image.
+   * Don't manipulate dead memory in Eina_Inlist in elm_transit.c.
 
 Removals:
 
index 5b8025c..a7d99e5 100644 (file)
@@ -222,8 +222,9 @@ static void
 _transit_remove_dead_effects(Elm_Transit *transit)
 {
    Elm_Transit_Effect_Module *effect_module;
+   Eina_Inlist *ll;
 
-   EINA_INLIST_FOREACH(transit->effect_list, effect_module)
+   EINA_INLIST_FOREACH_SAFE(transit->effect_list, ll, effect_module)
      {
         if (effect_module->deleted)
           {