filename = addrindex_get_picture_file(msginfo->from);
if (!filename)
return;
- if (!is_file_exist(filename))
+ if (!is_file_exist(filename)) {
gdk_pixbuf_save(picture, filename, "png", &error, NULL);
+ if (error) {
+ g_warning(_("Failed to save image: \n%s"),
+ error->message);
+ g_error_free(error);
+ }
+ }
g_free(filename);
}
}
g_free(filename);
- if (picture)
+ if (picture) {
textview->image = gtk_image_new_from_pixbuf(picture);
-
+ g_object_unref(picture);
+ }
g_return_if_fail(textview->image != NULL);
gtk_widget_show(textview->image);
"menu_button");
GtkWidget *image = NULL;
GdkPixbuf *picture = NULL;
-
+ gboolean use_picture = FALSE;
if (uri == NULL)
return;
/* extract url */
fromaddress = g_strdup(uri->uri + 7);
- /* Hiroyuki: please put this function in utils.c! */
+
+ if (textview->messageview->msginfo &&
+ !strcmp2(fromaddress, textview->messageview->msginfo->from))
+ use_picture = TRUE;
+
fromname = procheader_get_fromname(fromaddress);
extract_address(fromaddress);
- if (textview->messageview->msginfo &&
+ if (use_picture &&
+ textview->messageview->msginfo &&
textview->messageview->msginfo->extradata &&
textview->messageview->msginfo->extradata->face) {
image = face_get_from_header(textview->messageview->msginfo->extradata->face);
- } else if (textview->messageview->msginfo &&
+ }
+#if HAVE_LIBCOMPFACE
+ else if (use_picture &&
+ textview->messageview->msginfo &&
textview->messageview->msginfo->extradata &&
textview->messageview->msginfo->extradata->xface) {
image = xface_get_from_header(textview->messageview->msginfo->extradata->xface,
&textview->text->style->white,
mainwindow_get_mainwindow()->window->window);
}
+#endif
if (image)
picture = gtk_image_get_pixbuf(GTK_IMAGE(image));