[Spice-devel] [PATCH spice-gtk] glib-compat: g_slist_free_full: pass the right ptr to destroy (rhbz#997893)

Christophe Fergeau cfergeau at redhat.com
Mon Aug 19 08:16:32 PDT 2013


On Mon, Aug 19, 2013 at 04:53:21PM +0200, Hans de Goede wrote:
> The destroy function passed to g_slist_free_full should be passed the elements
> data pointer, not the element itself.
> 
> Signed-off-by: Hans de Goede <hdegoede at redhat.com>
> ---
>  gtk/glib-compat.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/gtk/glib-compat.c b/gtk/glib-compat.c
> index 21be1f6..c3bb8e6 100644
> --- a/gtk/glib-compat.c
> +++ b/gtk/glib-compat.c
> @@ -88,7 +88,7 @@ g_slist_free_full(GSList         *list,
>  
>      if (free_func) {
>          for (el = list; el ; el = g_slist_next(el)) {
> -            free_func(el);
> +            free_func(el->data);
>          }

Can't we just c&p the glib function instead? This is what I do whenever
possible:

void
g_slist_free_full (GSList         *list, GDestroyNotify  free_func)
{
  g_slist_foreach (list, (GFunc) free_func, NULL);
  g_slist_free (list);
}

Christophe
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/spice-devel/attachments/20130819/8cf8ede6/attachment.pgp>


More information about the Spice-devel mailing list