Blob Blame History Raw
diff -up evolution-3.12.11/composer/e-composer-private.c.crash-composer-gallery evolution-3.12.11/composer/e-composer-private.c
--- evolution-3.12.11/composer/e-composer-private.c.crash-composer-gallery	2014-10-29 12:12:27.000000000 +0100
+++ evolution-3.12.11/composer/e-composer-private.c	2015-05-22 11:47:18.659085597 +0200
@@ -289,7 +289,7 @@ e_composer_private_constructed (EMsgComp
 		GTK_SCROLLED_WINDOW (widget), GTK_SHADOW_IN);
 	gtk_widget_set_size_request (widget, -1, GALLERY_INITIAL_HEIGHT);
 	gtk_paned_pack1 (GTK_PANED (container), widget, FALSE, FALSE);
-	priv->gallery_scrolled_window = g_object_ref_sink (widget);
+	priv->gallery_scrolled_window = g_object_ref_sink (widget); /* despite the ref, do not unref in dispose */
 	gtk_widget_show (widget);
 
 	/* Reparent the scrolled window containing the GtkHTML widget
@@ -308,7 +308,7 @@ e_composer_private_constructed (EMsgComp
 		settings, "composer-gallery-path");
 	widget = e_picture_gallery_new (gallery_path);
 	gtk_container_add (GTK_CONTAINER (container), widget);
-	priv->gallery_icon_view = g_object_ref_sink (widget);
+	priv->gallery_icon_view = g_object_ref_sink (widget); /* despite the ref, do not unref in dispose */
 	g_free (gallery_path);
 
 	e_signal_connect_notify (
@@ -435,9 +435,6 @@ e_composer_private_dispose (EMsgComposer
 		composer->priv->composer_actions = NULL;
 	}
 
-	g_clear_object (&composer->priv->gallery_icon_view);
-	g_clear_object (&composer->priv->gallery_scrolled_window);
-
 	g_hash_table_remove_all (composer->priv->inline_images);
 	g_hash_table_remove_all (composer->priv->inline_images_by_url);