aboutsummaryrefslogtreecommitdiffstats
path: root/src/vmime/net/maildir/maildirMessage.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/vmime/net/maildir/maildirMessage.cpp')
-rw-r--r--src/vmime/net/maildir/maildirMessage.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/src/vmime/net/maildir/maildirMessage.cpp b/src/vmime/net/maildir/maildirMessage.cpp
index a14f067e..541c58b6 100644
--- a/src/vmime/net/maildir/maildirMessage.cpp
+++ b/src/vmime/net/maildir/maildirMessage.cpp
@@ -58,10 +58,17 @@ maildirMessage::maildirMessage(shared_ptr <maildirFolder> folder, const int num)
maildirMessage::~maildirMessage()
{
- shared_ptr <maildirFolder> folder = m_folder.lock();
+ try
+ {
+ shared_ptr <maildirFolder> folder = m_folder.lock();
- if (folder)
- folder->unregisterMessage(this);
+ if (folder)
+ folder->unregisterMessage(this);
+ }
+ catch (...)
+ {
+ // Don't throw in destructor
+ }
}