elementary/genlist - added FIXEME:
authorChunEon Park <chuneon.park@samsung.com>
Wed, 22 Feb 2012 16:18:16 +0000 (01:18 +0900)
committerHyoyoung Chang <hyoyoung.chang@samsung.com>
Thu, 23 Feb 2012 04:58:41 +0000 (13:58 +0900)
Change-Id: I16be8db1f502ae89ef81c172673fec2cf22e3ae8

src/lib/elm_genlist.c

index 55bb75f..4bb4b56 100644 (file)
@@ -2785,6 +2785,7 @@ _scroll_item(Widget_Data *wd)
 {
    Elm_Genlist_Item *it = NULL;
    Evas_Coord ow, oh, dx = 0, dy = 0, dw = 0, dh = 0;
+   if (!wd->show_item) return;
 
    evas_object_geometry_get(wd->pan_smart, NULL, NULL, &ow, &oh);
    it = wd->show_item;
@@ -2959,10 +2960,14 @@ _calc_job(void *data)
               dy = 0;
               break;
           }
-        if ((pan_w > (wd->show_item->x + wd->show_item->block->x)) &&
-            (pan_h > (wd->show_item->y + wd->show_item->block->y + dy)))
+
+        if (wd->show_item)
           {
-             _scroll_item(wd);
+             if ((pan_w > (wd->show_item->x + wd->show_item->block->x)) &&
+                 (pan_h > (wd->show_item->y + wd->show_item->block->y + dy)))
+               {
+                  _scroll_item(wd);
+               }
           }
      }
    wd->calc_job = NULL;
@@ -4085,7 +4090,11 @@ newblock:
      {
         it->rel->relcount--;
         if ((it->rel->delete_me) && (!it->rel->relcount))
-          _item_del(it->rel);
+          {
+             _item_del(it->rel);
+             elm_widget_item_free(it->rel);
+          }
+
         it->rel = NULL;
      }
    if (itb->count > itb->wd->max_items_per_block)