elementary/index - [E-devel] [Patch] elm_index patch
authorRAJEEV RANJAN <rajeev.r@samsung.com>
Wed, 30 Nov 2011 00:07:44 +0000 (00:07 +0000)
committerChunEon Park <hermet@hermet.pe.kr>
Wed, 30 Nov 2011 00:07:44 +0000 (00:07 +0000)
Hi,

Attachment to the mail is elm_index patch.

Change Log:
a. Memory leak fix in function elm_index_item_append_relative due to memory allocated for item creation reamined allocated when the control returns.
b. Memory leak fix in function elm_index_item_prepend_relative due to memory allocated for item creation reamined allocated when the control returns.

Signed-Off-By: RAJEEV RANJAN <rajeev.r@samsung.com>
Signed-Off-By: PRINCE KUMAR DUBEY <prince.dubey@samsung.com>
Signed-Off-By: ChunEon Park <hermet@hermet.pe.kr>
SVN revision: 65697

src/lib/elm_index.c

index 527b463..206b190 100644 (file)
@@ -681,13 +681,13 @@ elm_index_item_append_relative(Evas_Object *obj, const char *letter, const void
         elm_index_item_append(obj, letter, item);
         return;
      }
-   it = _item_new(obj, letter, item);
    it_rel = _item_find(obj, relative);
    if (!it_rel)
      {
         elm_index_item_append(obj, letter, item);
         return;
      }
+   it = _item_new(obj, letter, item);
    if (!it) return;
    wd->items = eina_list_append_relative(wd->items, it, it_rel);
    _index_box_clear(obj, wd->bx[wd->level], wd->level);
@@ -705,13 +705,13 @@ elm_index_item_prepend_relative(Evas_Object *obj, const char *letter, const void
         elm_index_item_prepend(obj, letter, item);
         return;
      }
-   it = _item_new(obj, letter, item);
    it_rel = _item_find(obj, relative);
    if (!it_rel)
      {
         elm_index_item_append(obj, letter, item);
         return;
      }
+   it = _item_new(obj, letter, item);
    if (!it) return;
    wd->items = eina_list_prepend_relative(wd->items, it, it_rel);
    _index_box_clear(obj, wd->bx[wd->level], wd->level);