Why didn't you use arcanist to push this patch?
The author of this commit should be Taehwan Kim.
Spank spank spank.

Daniel Juyung Seo (SeoZ)


On Mon, Sep 9, 2013 at 4:35 PM, Daniel Zaoui - Enlightenment Git <
no-re...@enlightenment.org> wrote:

> jackdanielz pushed a commit to branch master.
>
> commit dc9c3ee6f9b784400215dfc7410729c5c786e753
> Author: Daniel Zaoui <daniel.za...@samsung.com>
> Date:   Mon Sep 9 10:12:45 2013 +0300
>
>     Genlist: fix memory not freed when item is expanded.
>
>     Thanks to TaeHwan Kim for the fix.
> ---
>  src/lib/elm_genlist.c | 16 ++++++++++++++++
>  1 file changed, 16 insertions(+)
>
> diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
> index d672d11..99da991 100644
> --- a/src/lib/elm_genlist.c
> +++ b/src/lib/elm_genlist.c
> @@ -3076,6 +3076,16 @@ _item_del(Elm_Gen_Item *it)
>     ELM_GENLIST_DATA_GET_FROM_ITEM(it, sd);
>
>     evas_event_freeze(evas_object_evas_get(obj));
> +
> +   // FIXME: relative will be better to be fixed. it is too harsh.
> +   if (it->item->rel)
> +      it->item->rel->item->rel_revs =
> +         eina_list_remove(it->item->rel->item->rel_revs, it);
> +   if (it->item->rel_revs)
> +     {
> +        Elm_Gen_Item *tmp;
> +        EINA_LIST_FREE(it->item->rel_revs, tmp) tmp->item->rel = NULL;
> +     }
>     elm_genlist_item_subitems_clear((Elm_Object_Item *)it);
>     if (sd->show_item == it) sd->show_item = NULL;
>     if (it->realized) _elm_genlist_item_unrealize(it, EINA_FALSE);
> @@ -4015,6 +4025,9 @@ _item_move_after(Elm_Gen_Item *it,
>
>     sd->items = eina_inlist_append_relative
>         (sd->items, EINA_INLIST_GET(it), EINA_INLIST_GET(after));
> +   if (it->item->rel)
> +      it->item->rel->item->rel_revs =
> +         eina_list_remove(it->item->rel->item->rel_revs, it);
>     it->item->rel = after;
>     after->item->rel_revs = eina_list_append(after->item->rel_revs, it);
>     it->item->before = EINA_FALSE;
> @@ -4084,6 +4097,9 @@ _item_move_before(Elm_Gen_Item *it,
>     if (it->item->block) _item_block_del(it);
>     sd->items = eina_inlist_prepend_relative
>         (sd->items, EINA_INLIST_GET(it), EINA_INLIST_GET(before));
> +   if (it->item->rel)
> +      it->item->rel->item->rel_revs =
> +         eina_list_remove(it->item->rel->item->rel_revs, it);
>     it->item->rel = before;
>     before->item->rel_revs = eina_list_append(before->item->rel_revs, it);
>     it->item->before = EINA_TRUE;
>
> --
>
>
> ------------------------------------------------------------------------------
> Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
> Discover the easy way to master current and previous Microsoft technologies
> and advance your career. Get an incredible 1,500+ hours of step-by-step
> tutorial videos with LearnDevNow. Subscribe today and save!
> http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.clktrk
>
------------------------------------------------------------------------------
Learn the latest--Visual Studio 2012, SharePoint 2013, SQL 2012, more!
Discover the easy way to master current and previous Microsoft technologies
and advance your career. Get an incredible 1,500+ hours of step-by-step
tutorial videos with LearnDevNow. Subscribe today and save!
http://pubads.g.doubleclick.net/gampad/clk?id=58041391&iu=/4140/ostg.clktrk
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to