[prev in list] [next in list] [prev in thread] [next in thread] 

List:       freedesktop-dbus
Subject:    Re: Memory leaks in glib bindings
From:       Colin Walters <walters () verbum ! org>
Date:       2005-06-20 19:12:00
Message-ID: 1119294720.3885.13.camel () nexus ! verbum ! private
[Download RAW message or body]


On Mon, 2005-06-20 at 12:18 +0100, Ross Burton wrote:

> @@ -1570,20 +1573,21 @@
>  
>    dbus_message_iter_init_append (reply, &iter);
>  
> +  values = g_value_array_new (0);
>    va_start (args, context);
>    for (i = 0; i < argsig->len; i++)
>      {
> -      GValue value = {0,};
>        char *error;
> -      g_value_init (&value, g_array_index (argsig, GType, i));
> +      g_value_array_prepend (values, NULL);
> +      g_value_init (&values->values[0], g_array_index (argsig, GType,
> i));
>        error = NULL;
> -      G_VALUE_COLLECT (&value, args, 0, &error);
> +      G_VALUE_COLLECT (&values->values[0], args, 0, &error);
>        if (error)
>         {
>           g_warning(error);
>           g_free (error);
>         }
> -      dbus_gvalue_marshal (&iter, &value);
> +      dbus_gvalue_marshal (&iter, &values->values[0]);
>      }
>    va_end (args);

Isn't this just missing G_VALUE_NOCOPY_CONTENTS instead of 0 for
G_VALUE_COLLECT?


["signature.asc" (application/pgp-signature)]

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic