On Tue, May 28, 2013 at 2:58 AM, Rafael Antognolli <antogno...@gmail.com>wrote:

> On Thu, May 23, 2013 at 12:58 PM, Daniel Juyung Seo - Enlightenment
> Git <no-re...@enlightenment.org> wrote:
> > seoz pushed a commit to branch master.
> >
> > commit 2b25732ad24a68a309f60d702087bab673e3576c
> > Author: Daniel Juyung Seo <seojuy...@gmail.com>
> > Date:   Fri May 24 00:58:38 2013 +0900
> >
> >     elm: more ELM_FREE_FUNC cleanups.
> > ---
> >  src/lib/elm_box.c                  |  12 +--
> >  src/lib/elm_cnp.c                  |   7 +-
> >  src/lib/elm_flip.c                 |   6 +-
> >  src/lib/elm_gengrid.c              |   5 +-
> >  src/lib/elm_genlist.c              |  29 ++------
> >  src/lib/elm_interface_scrollable.c | 146
> ++++++++++---------------------------
> >  src/lib/elm_transit.c              |   6 +-
> >  src/lib/elm_web.c                  |  15 +---
> >  src/lib/elu_ews_wm.c               |  30 ++------
> >  9 files changed, 63 insertions(+), 193 deletions(-)
>
>
> > --- a/src/lib/elm_gengrid.c
> > +++ b/src/lib/elm_gengrid.c
> > @@ -1240,9 +1240,8 @@ _item_place(Elm_Gen_Item *it,
> >                 }
> >               else if (item->item_reorder_move_animator)
> >                 {
> > -                  ecore_animator_del
> > -                    (item->item_reorder_move_animator);
> > -                  item->item_reorder_move_animator = NULL;
> > +                  ELM_FREE_FUNC(item->item_reorder_move_animator,
> > +                                ecore_animator_del);
> >                    item->moving = EINA_FALSE;
> >                 }
> >            }
> > diff --git a/src/lib/elm_genlist.c b/src/lib/elm_genlist.c
> > index 8b7e4e9..420347c 100644
> > --- a/src/lib/elm_genlist.c
> > +++ b/src/lib/elm_genlist.c
> > @@ -3066,8 +3066,7 @@ _item_del(Elm_Gen_Item *it)
> >          if (sd->tree_effect_animator)
> >            {
> >               _item_tree_effect_finish(sd);
> > -             ecore_animator_del(sd->tree_effect_animator);
> > -             sd->tree_effect_animator = NULL;
> > +             ELM_FREE_FUNC(sd->tree_effect_animator,
> ecore_animator_del);
> >            }
> >          sd->expanded_item = NULL;
> >          sd->move_effect_mode = ELM_GENLIST_TREE_EFFECT_NONE;
>
> Here you changed the code to:
>
> if (sd->tree_effect_animator)
>   {
>       _item_tree_effect_finish(sd);
>       if (sd->tree_effect_animator)
>         {
>            ecore_animator_del(sd->tree_effect_animator);
>            sd->tree_effect_animator = NULL;
>         }
>   }
>
> I didn't check all of these changes, but I fear that a lot of
> redundancy like this is being added all over the code.
>
>
Yes you are right and as discussed in another mail thread I was aware of
that before I committed this.
But I found out there are so many human mistakes in elementary, so I wanted
to force to use the macro.
Of course, it's not that optimized anyway, so I am on my way to clean this
up.
Maybe I should modify macros.

1. ELM_IF_FREE_FUNC
if -> del -> set to null

2. ELM_FREE_FUNC
del -> set to null

But having multiple macros for similar tasks is also confusing.
So I welcome any kind of opinion.
Anyhow, thanks for your reply and consideration.

Please consider this as an effort to reduce many bugs in elementary.
Thanks.

Daniel Juyung Seo (SeoZ)



> --
> Rafael Antognolli
>
>
> ------------------------------------------------------------------------------
> Try New Relic Now & We'll Send You this Cool Shirt
> New Relic is the only SaaS-based application performance monitoring service
> that delivers powerful full stack analytics. Optimize and monitor your
> browser, app, & servers with just a few lines of code. Try New Relic
> and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>
------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to