aboutsummaryrefslogtreecommitdiffstats
path: root/src/messaging/POP3Message.cpp
diff options
context:
space:
mode:
authorVincent Richard <[email protected]>2005-03-23 08:19:23 +0000
committerVincent Richard <[email protected]>2005-03-23 08:19:23 +0000
commit29cc768d1a9c10768642992fd3ace1284688ffc0 (patch)
treef66449e64e7d05bd72634c41efd524e61feddf69 /src/messaging/POP3Message.cpp
parentUpdated VMime website URL. (diff)
downloadvmime-29cc768d1a9c10768642992fd3ace1284688ffc0.tar.gz
vmime-29cc768d1a9c10768642992fd3ace1284688ffc0.zip
Fixed multiple bugs in POP3 protocol.
Diffstat (limited to '')
-rw-r--r--src/messaging/POP3Message.cpp11
1 files changed, 4 insertions, 7 deletions
diff --git a/src/messaging/POP3Message.cpp b/src/messaging/POP3Message.cpp
index 633f9491..d9ef2989 100644
--- a/src/messaging/POP3Message.cpp
+++ b/src/messaging/POP3Message.cpp
@@ -29,7 +29,7 @@ namespace messaging {
POP3Message::POP3Message(POP3Folder* folder, const int num)
- : m_folder(folder), m_num(num), m_header(NULL)
+ : m_folder(folder), m_num(num), m_size(-1), m_header(NULL)
{
m_folder->registerMessage(this);
}
@@ -64,13 +64,10 @@ const message::uid POP3Message::getUniqueId() const
const int POP3Message::getSize() const
{
- if (!m_folder)
- throw exceptions::illegal_state("Folder closed");
-
- POP3Folder::MessageMap::const_iterator it =
- m_folder->m_messages.find(const_cast <POP3Message*>(this));
+ if (m_size == -1)
+ throw exceptions::unfetched_object();
- return ((it != m_folder->m_messages.end()) ? (*it).second : 0);
+ return (m_size);
}