diff options
-rw-r--r-- | src/vmime/net/imap/IMAPMessage.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/vmime/net/imap/IMAPMessage.cpp b/src/vmime/net/imap/IMAPMessage.cpp index 534727d4..0bf8fbe6 100644 --- a/src/vmime/net/imap/IMAPMessage.cpp +++ b/src/vmime/net/imap/IMAPMessage.cpp @@ -38,6 +38,8 @@ #include "vmime/net/imap/IMAPMessagePart.hpp" #include "vmime/net/imap/IMAPMessagePartContentHandler.hpp" +#include "vmime/messageId.hpp" +#include "vmime/messageIdSequence.hpp" #include "vmime/utility/outputStreamAdapter.hpp" #include <sstream> @@ -578,6 +580,19 @@ int IMAPMessage::processFetchResponse( if (!bcc.isEmpty()) { hdr->Bcc()->setValue(bcc.toAddressList()); } + + // Message-ID + if (!env->env_message_id->isNIL) { + hdr->MessageId()->setValue(messageId(env->env_message_id->value)); + } + + // In-Reply-To + if (!env->env_in_reply_to->isNIL) { + shared_ptr <messageId> mid = make_shared <messageId>(env->env_in_reply_to->value); + messageIdSequence sequence; + sequence.appendMessageId(mid); + hdr->InReplyTo()->setValue(sequence); + } } break; |