- sprintf(mime_boundary, "--Citadel-Journal-%08lx-%04x--", time(NULL), ++seq);
- message_text = malloc(strlen(jmsg->rfc822) + sizeof(struct recptypes) + 1024);
+ if (!IsEmptyStr(jmsg->from)) {
+ CM_SetField(journal_msg, eAuthor, jmsg->from, -1);
+ }
+
+ if (!IsEmptyStr(jmsg->rfca)) {
+ CM_SetField(journal_msg, erFc822Addr, jmsg->rfca, -1);
+ }
+
+ if (!IsEmptyStr(jmsg->subj)) {
+ CM_SetField(journal_msg, eMsgSubject, jmsg->subj, -1);
+ }
+
+ mblen = snprintf(mime_boundary, sizeof(mime_boundary),
+ "--Citadel-Journal-%08lx-%04x--", time(NULL), ++seq);
+
+ if (!IsEmptyStr(jmsg->rfc822)) {
+ rfc822len = strlen(jmsg->rfc822);
+ }
+ else {
+ rfc822len = 0;
+ }
+
+ message_text = NewStrBufPlain(NULL, rfc822len + sizeof(recptypes) + 1024);