elm: Set timer/animator to NULL after they're deleted.
authorseoz <seoz@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 30 Mar 2012 12:31:11 +0000 (12:31 +0000)
committerseoz <seoz@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Fri, 30 Mar 2012 12:31:11 +0000 (12:31 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/elementary@69796 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/elm_flipselector.c
src/lib/elm_index.c
src/lib/elm_list.c
src/lib/elm_slideshow.c

index d61e4bd..0eaeeb9 100644 (file)
@@ -324,6 +324,7 @@ _event_hook(Evas_Object *obj, Evas_Object *src __UNUSED__, Evas_Callback_Type ty
      return EINA_FALSE;
 
    if (wd->spin) ecore_timer_del(wd->spin);
+   wd->spin = NULL;
 
    /* TODO: if direction setting via API is not coming in, replace
       these calls by flip_{next,prev} */
@@ -663,6 +664,7 @@ elm_flipselector_flip_next(Evas_Object *obj)
    if (!wd) return;
 
    if (wd->spin) ecore_timer_del(wd->spin);
+   wd->spin = NULL;
 
    _flipselector_walk(wd);
    _flip_down(wd);
@@ -678,6 +680,7 @@ elm_flipselector_flip_prev(Evas_Object *obj)
    if (!wd) return;
 
    if (wd->spin) ecore_timer_del(wd->spin);
+   wd->spin = NULL;
 
    _flipselector_walk(wd);
    _flip_up(wd);
index c69f0ca..de583e5 100644 (file)
@@ -70,6 +70,7 @@ _del_pre_hook(Evas_Object *obj)
         elm_widget_item_free(it);
      }
    if (wd->delay) ecore_timer_del(wd->delay);
+   wd->delay = NULL;
 }
 
 static void
index 2ab480a..e147e8d 100644 (file)
@@ -133,7 +133,9 @@ _elm_list_item_free(Elm_List_Item *it)
    eina_stringshare_del(it->label);
 
    if (it->swipe_timer) ecore_timer_del(it->swipe_timer);
+   it->swipe_timer = NULL;
    if (it->long_timer) ecore_timer_del(it->long_timer);
+   it->long_timer = NULL;
    if (it->icon) evas_object_del(it->icon);
    if (it->end) evas_object_del(it->end);
 }
index d23997d..e694f1a 100644 (file)
@@ -494,6 +494,7 @@ elm_slideshow_item_show(Elm_Object_Item *it)
    _end(WIDGET(item), WIDGET(item), NULL, NULL);
 
    if (wd->timer) ecore_timer_del(wd->timer);
+   wd->timer = NULL;
    if (wd->timeout > 0.0)
      wd->timer = ecore_timer_add(wd->timeout, _timer_cb, WIDGET(item));
    _item_realize(next);
@@ -523,6 +524,7 @@ elm_slideshow_next(Evas_Object *obj)
    _end(obj, obj, NULL, NULL);
 
    if (wd->timer) ecore_timer_del(wd->timer);
+   wd->timer = NULL;
    if (wd->timeout > 0.0)
      wd->timer = ecore_timer_add(wd->timeout, _timer_cb, obj);
 
@@ -556,6 +558,7 @@ elm_slideshow_previous(Evas_Object *obj)
    _end(obj, obj, NULL, NULL);
 
    if (wd->timer) ecore_timer_del(wd->timer);
+   wd->timer = NULL;
    if (wd->timeout > 0.0)
      wd->timer = ecore_timer_add(wd->timeout, _timer_cb, obj);