Index: libgtkhtml/graphics/htmlpainter.c =================================================================== --- libgtkhtml/graphics/htmlpainter.c.orig 2005-12-28 22:07:37.000000000 +0000 +++ libgtkhtml/graphics/htmlpainter.c 2006-04-19 13:44:55.000000000 +0100 @@ -166,6 +166,9 @@ html_painter_set_foreground_color (HtmlP static void html_painter_finalize (GObject *object) { + HtmlPainter *painter = HTML_PAINTER (object); + + g_object_unref (G_OBJECT (painter->loading_picture)); G_OBJECT_CLASS (parent_class)->finalize (object); } Index: libgtkhtml/view/htmlview.c =================================================================== --- libgtkhtml/view/htmlview.c.orig 2006-04-19 13:39:36.000000000 +0100 +++ libgtkhtml/view/htmlview.c 2006-04-19 14:07:59.000000000 +0100 @@ -2322,6 +2322,16 @@ html_view_realize (GtkWidget *widget) html_view_relayout_when_idle (view); } +static void +html_view_unrealize (GtkWidget *widget) +{ + HtmlView *view = HTML_VIEW (widget); + + g_object_unref (G_OBJECT (view->painter)); + + if (GTK_WIDGET_CLASS (parent_class)->unrealize) + (* GTK_WIDGET_CLASS (parent_class)->unrealize) (widget); +} static gboolean html_view_enter_notify (GtkWidget *widget, GdkEventCrossing *event) @@ -2957,6 +2967,7 @@ html_view_class_init (HtmlViewClass *kla widget_class->size_allocate = html_view_size_allocate; widget_class->realize = html_view_realize; + widget_class->unrealize = html_view_unrealize; widget_class->expose_event = html_view_expose; widget_class->motion_notify_event = html_view_motion_notify; widget_class->button_press_event = html_view_button_press;