textview_clear(textview);
- textview_add_parts(textview, mimeinfo);
+ if (mimeinfo->type == MIMETYPE_MULTIPART ||
+ (mimeinfo->type == MIMETYPE_MESSAGE && !g_ascii_strcasecmp(mimeinfo->subtype, "rfc822"))) {
+ textview_add_parts(textview, mimeinfo);
+ } else {
+ if (fseek(fp, mimeinfo->offset, SEEK_SET) < 0)
+ perror("fseek");
+
+ textview_write_body(textview, mimeinfo);
+ }
textview->loading = FALSE;
textview->stop_loading = FALSE;
END_TIMING();
GTK_EVENTS_FLUSH();
}
- } else {
+ } else if (mimeinfo->type == MIMETYPE_TEXT) {
if (prefs_common.display_header && (charcount > 0))
gtk_text_buffer_insert(buffer, &iter, "\n", 1);