aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/abstract/MCMessageHeader.cpp7
-rw-r--r--src/core/renderer/MCHTMLRenderer.cpp1
-rw-r--r--src/core/rfc822/MCAttachment.cpp8
-rw-r--r--src/core/smtp/MCSMTPSession.cpp14
4 files changed, 19 insertions, 11 deletions
diff --git a/src/core/abstract/MCMessageHeader.cpp b/src/core/abstract/MCMessageHeader.cpp
index 1b163638..6d744ece 100644
--- a/src/core/abstract/MCMessageHeader.cpp
+++ b/src/core/abstract/MCMessageHeader.cpp
@@ -721,12 +721,7 @@ struct mailimf_fields * MessageHeader::createIMFFieldsAndFilterBcc(bool filterBc
imfSubject = strdup(data->bytes());
}
}
-
- if ((imfTo == NULL) && (imfCc == NULL) && (imfBcc == NULL)) {
- imfTo = mailimf_address_list_new_empty();
- mailimf_address_list_add_parse(imfTo, (char *) "Undisclosed recipients:;");
- }
-
+
fields = mailimf_fields_new_with_data_all(imfDate,
imfFrom,
NULL /* sender */,
diff --git a/src/core/renderer/MCHTMLRenderer.cpp b/src/core/renderer/MCHTMLRenderer.cpp
index 289de210..c42bcb45 100644
--- a/src/core/renderer/MCHTMLRenderer.cpp
+++ b/src/core/renderer/MCHTMLRenderer.cpp
@@ -321,6 +321,7 @@ static String * htmlForAbstractSinglePart(AbstractPart * part, htmlRendererConte
String * str = data->stringWithDetectedCharset(charset, false);
str = str->htmlMessageContent();
+ str = context->htmlCallback->filterHTMLForPart(str);
context->firstRendered = true;
return str;
}
diff --git a/src/core/rfc822/MCAttachment.cpp b/src/core/rfc822/MCAttachment.cpp
index 014f8341..cdee201b 100644
--- a/src/core/rfc822/MCAttachment.cpp
+++ b/src/core/rfc822/MCAttachment.cpp
@@ -112,10 +112,7 @@ String * Attachment::mimeTypeForFilename(String * filename)
if (result != NULL)
return result;
- if (ext->isEqual(MCSTR("jpg"))) {
- return MCSTR("image/jpeg");
- }
- else if (ext->isEqual(MCSTR("jpeg"))) {
+ if (ext->isEqual(MCSTR("jpeg")) || ext->isEqual(MCSTR("jpg"))) {
return MCSTR("image/jpeg");
}
else if (ext->isEqual(MCSTR("png"))) {
@@ -130,6 +127,9 @@ String * Attachment::mimeTypeForFilename(String * filename)
else if (ext->isEqual(MCSTR("txt"))) {
return MCSTR("text/plain");
}
+ else if (ext->isEqual(MCSTR("tiff")) || ext->isEqual(MCSTR("tif"))) {
+ return MCSTR("image/tiff");
+ }
return NULL;
}
diff --git a/src/core/smtp/MCSMTPSession.cpp b/src/core/smtp/MCSMTPSession.cpp
index cb9b02cb..8187675e 100644
--- a/src/core/smtp/MCSMTPSession.cpp
+++ b/src/core/smtp/MCSMTPSession.cpp
@@ -703,7 +703,8 @@ Data * SMTPSession::dataWithFilteredBcc(Data * data)
struct mailimf_fields * fields = msg->msg_fields;
int col = 0;
-
+
+ int hasRecipient = 0;
str = mmap_string_new("");
for(clistiter * cur = clist_begin(fields->fld_list) ; cur != NULL ; cur = clist_next(cur)) {
struct mailimf_field * field = (struct mailimf_field *) clist_content(cur);
@@ -712,6 +713,17 @@ Data * SMTPSession::dataWithFilteredBcc(Data * data)
clist_delete(fields->fld_list, cur);
break;
}
+ else if ((field->fld_type == MAILIMF_FIELD_TO) || (field->fld_type == MAILIMF_FIELD_CC) || (field->fld_type == MAILIMF_FIELD_BCC)) {
+ hasRecipient = 1;
+ }
+ }
+ if (!hasRecipient) {
+ struct mailimf_address_list * imfTo;
+ imfTo = mailimf_address_list_new_empty();
+ mailimf_address_list_add_parse(imfTo, (char *) "Undisclosed recipients:;");
+ struct mailimf_to * toField = mailimf_to_new(imfTo);
+ struct mailimf_field * field = mailimf_field_new(MAILIMF_FIELD_TO, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, toField, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL);
+ mailimf_fields_add(fields, field);
}
mailimf_fields_write_mem(str, &col, fields);
mmap_string_append(str, "\n");