From 29cc768d1a9c10768642992fd3ace1284688ffc0 Mon Sep 17 00:00:00 2001 From: Vincent Richard Date: Wed, 23 Mar 2005 08:19:23 +0000 Subject: Fixed multiple bugs in POP3 protocol. --- src/messaging/POP3Message.cpp | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) (limited to 'src/messaging/POP3Message.cpp') 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 (this)); + if (m_size == -1) + throw exceptions::unfetched_object(); - return ((it != m_folder->m_messages.end()) ? (*it).second : 0); + return (m_size); } -- cgit v1.2.3