- sprintf(mime_boundary, "--Citadel-Journal-%08lx-%04x--", time(NULL), ++seq);
- message_text = malloc(strlen(jmsg->rfc822) + sizeof(struct recptypes) + 1024);
+ if (!IsEmptyStr(jmsg->node)) {
+ CM_SetField(journal_msg, eNodeName, jmsg->node, strlen(jmsg->node));
+ }
+
+ if (!IsEmptyStr(jmsg->rfca)) {
+ CM_SetField(journal_msg, erFc822Addr, jmsg->rfca, strlen(jmsg->rfca));
+ }
+
+ if (!IsEmptyStr(jmsg->subj)) {
+ CM_SetField(journal_msg, eMsgSubject, jmsg->subj, strlen(jmsg->subj));
+ }
+
+ 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);