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