On Wed, 9 Dec 2015 18:27:09 +0100 Cedric BAIL <cedric.b...@free.fr> said:

> Le 8 déc. 2015 23:22, "Carsten Haitzler" <ras...@rasterman.com> a écrit :
> >
> > raster pushed a commit to branch master.
> >
> >
> http://git.enlightenment.org/core/enlightenment.git/commit/?id=a885c8c0402d142efce67fac8f57b8e019e57022
> >
> > commit a885c8c0402d142efce67fac8f57b8e019e57022
> > Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
> > Date:   Wed Dec 9 16:21:31 2015 +0900
> >
> >     e - fix using an invalid icon theme - fall back to hicolor if not
> exists
> >
> >     this should fix D2036 on the e side by checking validity of an icon
> >     theme once efreet has finished scanning for stuff and if its invalid,
> >     going back to hicolor.
> >
> >     @fix
> > ---
> >  src/bin/e_config.c | 28 ++++++++++++++++++++++++++++
> >  1 file changed, 28 insertions(+)
> >
> > diff --git a/src/bin/e_config.c b/src/bin/e_config.c
> > index 00d4207..7e30bc0 100644
> > --- a/src/bin/e_config.c
> > +++ b/src/bin/e_config.c
> > @@ -56,6 +56,7 @@ E_API int E_EVENT_CONFIG_MODE_CHANGED = 0;
> >  E_API int E_EVENT_CONFIG_LOADED = 0;
> >
> >  static E_Dialog *_e_config_error_dialog = NULL;
> > +static Eina_List *handlers = NULL;
> >
> >  typedef struct _E_Color_Class
> >  {
> > @@ -65,6 +66,24 @@ typedef struct _E_Color_Class
> >     int           r3, g3, b3, a3;
> >  } E_Color_Class;
> >
> > +static Eina_Bool
> > +_e_config_cb_efreet_cache_update(void *data EINA_UNUSED, int type
> EINA_UNUSED, void *ev EINA_UNUSED)
> > +{
> > +   if (e_config)
> > +     {
> > +        if (e_config->icon_theme)
> > +          {
> > +             if (!efreet_icon_theme_find(e_config->icon_theme))
> > +               {
> > +                  e_config->icon_theme = eina_stringshare_add("hicolor");
> 
> This line looks like a memory leak to me. Shouldn't it be an
> eina_stringshare_replace ?

yeah - you're right. minor tho as it'll likely happen just once for a run of e
as it figures its config is wrong and fixes it.

> > +                  e_config_save_queue();
> > +               }
> > +          }
> > +     }
> > +   return ECORE_CALLBACK_RENEW;
> > +}
> > +
> > +
> >  static void
> >  _e_config_error_dialog_cb_delete(void *dia)
> >  {
> > @@ -933,12 +952,21 @@ e_config_init(void)
> >     e_config_load();
> >
> >     e_config_save_queue();
> > +
> > +   E_LIST_HANDLER_APPEND(handlers, EFREET_EVENT_DESKTOP_CACHE_UPDATE,
> > +                         _e_config_cb_efreet_cache_update, NULL);
> > +   E_LIST_HANDLER_APPEND(handlers, EFREET_EVENT_ICON_CACHE_UPDATE,
> > +                         _e_config_cb_efreet_cache_update, NULL);
> > +   E_LIST_HANDLER_APPEND(handlers, E_EVENT_CONFIG_ICON_THEME,
> > +                         _e_config_cb_efreet_cache_update, NULL);
> > +
> >     return 1;
> >  }
> >
> >  EINTERN int
> >  e_config_shutdown(void)
> >  {
> > +   E_FREE_LIST(handlers, ecore_event_handler_del);
> >     eina_stringshare_del(_e_config_profile);
> >     E_CONFIG_DD_FREE(_e_config_binding_edd);
> >     E_CONFIG_DD_FREE(_e_config_bindings_mouse_edd);
> >
> > --
> >
> >
> >
> ------------------------------------------------------------------------------
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    ras...@rasterman.com


------------------------------------------------------------------------------
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to