From 6b754e8a0801db79fe25a8fb27b623476288f3d1 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Thu, 24 Sep 2020 13:56:23 +0200 Subject: [PATCH] Fix crash --- src/collectionpage/collectiongeneralwidget.cpp | 3 +++ src/collectionpage/collectiontemplateswidget.cpp | 5 ++++- src/collectionpage/collectionviewwidget.cpp | 3 +++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/collectionpage/collectiongeneralwidget.cpp b/src/collectionpage/collectiongeneralwidget.cpp index 4890c71..7340e7f 100644 --- a/src/collectionpage/collectiongeneralwidget.cpp +++ b/src/collectionpage/collectiongeneralwidget.cpp @@ -114,6 +114,9 @@ void CollectionGeneralWidget::slotIdentityCheckboxChanged() void CollectionGeneralWidget::save(Akonadi::Collection &collection) { + if (!mFolderCollection) { + mFolderCollection = FolderSettings::forCollection(collection); + } if (!mNotifyOnNewMailCheckBox->isChecked()) { Akonadi::NewMailNotifierAttribute *newMailNotifierAttr = collection.attribute(Akonadi::Collection::AddIfMissing); newMailNotifierAttr->setIgnoreNewMail(true); diff --git a/src/collectionpage/collectiontemplateswidget.cpp b/src/collectionpage/collectiontemplateswidget.cpp index daf34e1..42706c0 100644 --- a/src/collectionpage/collectiontemplateswidget.cpp +++ b/src/collectionpage/collectiontemplateswidget.cpp @@ -54,8 +54,11 @@ CollectionTemplatesWidget::~CollectionTemplatesWidget() { } -void CollectionTemplatesWidget::save(Akonadi::Collection &) +void CollectionTemplatesWidget::save(Akonadi::Collection &col) { + if (mCollectionId.isEmpty()) { + mCollectionId = QString::number(col.id()); + } if (mChanged && !mCollectionId.isEmpty()) { TemplateParser::Templates t(mCollectionId); //qCDebug(KMAIL_LOG) << "use custom templates for folder" << fid <<":" << mCustom->isChecked(); diff --git a/src/collectionpage/collectionviewwidget.cpp b/src/collectionpage/collectionviewwidget.cpp index 016d7eb..735512a 100644 --- a/src/collectionpage/collectionviewwidget.cpp +++ b/src/collectionpage/collectionviewwidget.cpp @@ -152,6 +152,9 @@ void CollectionViewWidget::load(const Akonadi::Collection &col) void CollectionViewWidget::save(Akonadi::Collection &col) { + if (!mFolderCollection) { + mFolderCollection = MailCommon::FolderSettings::forCollection(col); + } const int currentIndex = mShowSenderReceiverComboBox->currentIndex(); if (mShowSenderReceiverValue != currentIndex) { if (currentIndex == 1) {