diff --git a/kolabformat/mimeobject.cpp b/kolabformat/mimeobject.cpp --- a/kolabformat/mimeobject.cpp +++ b/kolabformat/mimeobject.cpp @@ -254,25 +254,31 @@ case EventObject: { QStringList attachments; KCalCore::Event::Ptr kEvent = fromXML(xmlData, attachments); - Kolab::Event event = Kolab::Conversion::fromKCalCore(*kEvent); - event.setAttachments(getAttachments(attachments, msg)); - variant = QVariant::fromValue(event); + if (kEvent) { + Kolab::Event event = Kolab::Conversion::fromKCalCore(*kEvent); + event.setAttachments(getAttachments(attachments, msg)); + variant = QVariant::fromValue(event); + } break; } case TodoObject: { QStringList attachments; KCalCore::Todo::Ptr kTodo = fromXML(xmlData, attachments); - Kolab::Todo todo = Kolab::Conversion::fromKCalCore(*kTodo); - todo.setAttachments(getAttachments(attachments, msg)); - variant = QVariant::fromValue(todo); + if (kTodo) { + Kolab::Todo todo = Kolab::Conversion::fromKCalCore(*kTodo); + todo.setAttachments(getAttachments(attachments, msg)); + variant = QVariant::fromValue(todo); + } break; } case JournalObject: { QStringList attachments; KCalCore::Journal::Ptr kJournal = fromXML(xmlData, attachments); - Kolab::Journal journal = Kolab::Conversion::fromKCalCore(*kJournal); - journal.setAttachments(getAttachments(attachments, msg)); - variant = QVariant::fromValue(journal); + if (kJournal) { + Kolab::Journal journal = Kolab::Conversion::fromKCalCore(*kJournal); + journal.setAttachments(getAttachments(attachments, msg)); + variant = QVariant::fromValue(journal); + } break; } case ContactObject: {