aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJacek Piszczek <[email protected]>2021-03-16 00:38:04 +0000
committerJacek Piszczek <[email protected]>2021-03-16 00:38:04 +0000
commit025c15591978af17627e9cb061508a5b9ebc46aa (patch)
treed78a53a01edfa3fda11713f424f00ccad84e5c92 /src
parent#250 Fixed unquoted mailbox name (diff)
downloadvmime-025c15591978af17627e9cb061508a5b9ebc46aa.tar.gz
vmime-025c15591978af17627e9cb061508a5b9ebc46aa.zip
Workaround a RECEIVED message field missing actual date info.
Diffstat (limited to 'src')
-rw-r--r--src/vmime/messageParser.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/vmime/messageParser.cpp b/src/vmime/messageParser.cpp
index 21ac09bb..4f53b5d0 100644
--- a/src/vmime/messageParser.cpp
+++ b/src/vmime/messageParser.cpp
@@ -82,12 +82,18 @@ void messageParser::parse(const shared_ptr <const message>& msg) {
// Date
shared_ptr <const headerField> recv = msg->getHeader()->findField(fields::RECEIVED);
+ static const datetime unsetDate;
+
+ m_date = unsetDate;
if (recv) {
m_date = recv->getValue <relay>()->getDate();
- } else {
+ }
+
+ // RECEIVED may in some cases contain no date at all
+ if (unsetDate == m_date) {
shared_ptr <const headerField> date = msg->getHeader()->findField(fields::DATE);