aboutsummaryrefslogtreecommitdiffstats
path: root/src/net
diff options
context:
space:
mode:
Diffstat (limited to 'src/net')
-rw-r--r--src/net/imap/IMAPMessage.cpp1
-rw-r--r--src/net/imap/IMAPUtils.cpp5
-rw-r--r--src/net/maildir/maildirUtils.cpp2
3 files changed, 7 insertions, 1 deletions
diff --git a/src/net/imap/IMAPMessage.cpp b/src/net/imap/IMAPMessage.cpp
index bbdba69e..bc661edf 100644
--- a/src/net/imap/IMAPMessage.cpp
+++ b/src/net/imap/IMAPMessage.cpp
@@ -555,6 +555,7 @@ void IMAPMessage::setFlags(const int flags, const int mode)
if (flags & FLAG_MARKED) flagList.push_back("\\Flagged");
if (flags & FLAG_DELETED) flagList.push_back("\\Deleted");
if (flags & FLAG_SEEN) flagList.push_back("\\Seen");
+ if (flags & FLAG_DRAFT) flagList.push_back("\\Draft");
if (!flagList.empty())
{
diff --git a/src/net/imap/IMAPUtils.cpp b/src/net/imap/IMAPUtils.cpp
index c4651edf..0d6fc478 100644
--- a/src/net/imap/IMAPUtils.cpp
+++ b/src/net/imap/IMAPUtils.cpp
@@ -419,10 +419,12 @@ int IMAPUtils::messageFlagsFromFlags(const IMAPParser::flag_list* list)
case IMAPParser::flag::SEEN:
flags |= message::FLAG_SEEN;
break;
+ case IMAPParser::flag::DRAFT:
+ flags |= message::FLAG_DRAFT;
+ break;
default:
//case IMAPParser::flag::UNKNOWN:
- //case IMAPParser::flag::DRAFT:
break;
}
}
@@ -439,6 +441,7 @@ const string IMAPUtils::messageFlagList(const int flags)
if (flags & message::FLAG_MARKED) flagList.push_back("\\Flagged");
if (flags & message::FLAG_DELETED) flagList.push_back("\\Deleted");
if (flags & message::FLAG_SEEN) flagList.push_back("\\Seen");
+ if (flags & message::FLAG_DRAFT) flagList.push_back("\\Draft");
if (!flagList.empty())
{
diff --git a/src/net/maildir/maildirUtils.cpp b/src/net/maildir/maildirUtils.cpp
index 19887b24..3430d1f8 100644
--- a/src/net/maildir/maildirUtils.cpp
+++ b/src/net/maildir/maildirUtils.cpp
@@ -102,6 +102,7 @@ int maildirUtils::extractFlags(const utility::file::path::component& comp)
case 'T': case 't': flags |= message::FLAG_DELETED; break;
case 'F': case 'f': flags |= message::FLAG_MARKED; break;
case 'P': case 'p': flags |= message::FLAG_PASSED; break;
+ case 'D': case 'd': flags |= message::FLAG_DRAFT; break;
}
}
@@ -121,6 +122,7 @@ const utility::file::path::component maildirUtils::buildFlags(const int flags)
if (flags & message::FLAG_REPLIED) str += "R";
if (flags & message::FLAG_SEEN) str += "S";
if (flags & message::FLAG_DELETED) str += "T";
+ if (flags & message::FLAG_DRAFT) str += "D";
return (utility::file::path::component(str));
}