From ead6600cb6a4f8bee0f28e193466e0da5a20abaf Mon Sep 17 00:00:00 2001 From: Dmitry Isaikin Date: Wed, 27 Apr 2016 17:26:03 +0300 Subject: Do not segfault on MailProvider::*FolderPath in case of absence information about folders in providers.json (#1410) --- src/core/provider/MCMailProvider.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/core/provider/MCMailProvider.cpp b/src/core/provider/MCMailProvider.cpp index 99fc4deb..ad186042 100644 --- a/src/core/provider/MCMailProvider.cpp +++ b/src/core/provider/MCMailProvider.cpp @@ -249,36 +249,50 @@ bool MailProvider::matchDomain(String * match, String * domain) String * MailProvider::sentMailFolderPath() { + if (mMailboxPaths == NULL) + return NULL; return (String *) mMailboxPaths->objectForKey(MCSTR("sentmail")); } String * MailProvider::starredFolderPath() { + if (mMailboxPaths == NULL) + return NULL; return (String *) mMailboxPaths->objectForKey(MCSTR("starred")); } String * MailProvider::allMailFolderPath() { + if (mMailboxPaths == NULL) + return NULL; return (String *) mMailboxPaths->objectForKey(MCSTR("allmail")); } String * MailProvider::trashFolderPath() { + if (mMailboxPaths == NULL) + return NULL; return (String *) mMailboxPaths->objectForKey(MCSTR("trash")); } String * MailProvider::draftsFolderPath() { + if (mMailboxPaths == NULL) + return NULL; return (String *) mMailboxPaths->objectForKey(MCSTR("drafts")); } String * MailProvider::spamFolderPath() { + if (mMailboxPaths == NULL) + return NULL; return (String *) mMailboxPaths->objectForKey(MCSTR("spam")); } String * MailProvider::importantFolderPath() { + if (mMailboxPaths == NULL) + return NULL; return (String *) mMailboxPaths->objectForKey(MCSTR("important")); } -- cgit v1.2.3