Blame SOURCES/evolution-3.8.5-crash-attachment-add-remove.patch

79117e
diff -up evolution-3.8.5/e-util/e-attachment.c.crash-attachment-add-remove evolution-3.8.5/e-util/e-attachment.c
79117e
--- evolution-3.8.5/e-util/e-attachment.c.crash-attachment-add-remove	2013-08-01 14:12:40.000000000 +0200
79117e
+++ evolution-3.8.5/e-util/e-attachment.c	2014-01-23 15:33:23.461020314 +0100
79117e
@@ -357,6 +357,9 @@ attachment_update_icon_column_idle_cb (g
79117e
 
79117e
 	if (file_info != NULL) {
79117e
 		icon = g_file_info_get_icon (file_info);
79117e
+		/* add the reference here, thus the create_system_thumbnail() can unref the *icon. */
79117e
+		if (icon)
79117e
+			g_object_ref (icon);
79117e
 		thumbnail_path = g_file_info_get_attribute_byte_string (
79117e
 			file_info, G_FILE_ATTRIBUTE_THUMBNAIL_PATH);
79117e
 	}
79117e
@@ -374,11 +377,11 @@ attachment_update_icon_column_idle_cb (g
79117e
 		/* Nothing to do, just use the icon. */
79117e
 
79117e
 	/* Else use the standard icon for the content type. */
79117e
-	} else if (icon != NULL)
79117e
-		g_object_ref (icon);
79117e
+	} else if (icon != NULL) {
79117e
+		/* Nothing to do, just use the already reffed icon. */
79117e
 
79117e
 	/* Last ditch fallback.  (GFileInfo not yet loaded?) */
79117e
-	else
79117e
+	} else
79117e
 		icon = g_themed_icon_new (DEFAULT_ICON_NAME);
79117e
 
79117e
 	/* Pick an emblem, limit one.  Choices listed by priority. */