Re: Memory Leak?



Hi.

>         I'm just learning how to use g_object_get and was wondering if this
> function contained a memory leak:
> static void color_changed(GtkColorButton *caller, GtkWidget *label) {
>     GdkColor *color;
>
>     g_object_get(caller, "color", &color, NULL);
>     gtk_widget_modify_fg(label, GTK_STATE_NORMAL, color);
> }

Yes, this function leaks. GdkColor is GBoxed, which means that is
beaing copied when you call g_object_get. You should free it with
gdk_color_free( color ) or g_boxed_free( GDK_TYPE_COLOR, color )
before returning from callback.

-- 
Tadej Borovšak
tadeboro.blogspot.com
tadeboro gmail com
tadej borovsak gmail com


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]