On Thu, 05 Mar 2009 06:23:40 +0900 maeda <maeda@xxxxxxxxxxxx> wrote: > > Hi Folks > > I have a function which is eating up lots of memory. The function is > listed below and is called every 1 second with the same > > GtkWidget *widget > > being passed to it each time. > What do I need to do to stop it eating up memory. All I want the > function to do is set the colours of itself and its parent(if it has > one). Any help greatly appreciated. > > > > int SetWidgetColour(GtkWidget *widget, int bordersize, int red, > int green, int blue) > { > GtkStyle *new_style; > GdkColor color; > > color.red = red; > color.green = green; > color.blue = blue; > > gdk_color_alloc(gdk_colormap_get_system(), &color); > new_style = gtk_style_copy(gtk_widget_get_default_style()); > new_style->bg[GTK_STATE_NORMAL] = color; > new_style->bg[GTK_STATE_PRELIGHT] = color; > new_style->bg[GTK_STATE_ACTIVE] = color; > gtk_style_detach (widget->style); > gtk_widget_set_style(GTK_WIDGET(widget), new_style); > > return TRUE; > } I imagine that gtk_widget_set_style() probably increases the reference count. Chris _______________________________________________ gtk-list mailing list gtk-list@xxxxxxxxx http://mail.gnome.org/mailman/listinfo/gtk-list