From d1a0dc77840bda62b2487928e97647480f191366 Mon Sep 17 00:00:00 2001 From: Laurent Montel Date: Fri, 9 Mar 2018 07:46:30 +0100 Subject: [PATCH] Fix Bug 391594 - Explicitly setting 'Content-Type' header causes crash FIXED-IN: 5.8.0 BUG: 391594 --- src/configuredialog/configurecomposerpage.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/configuredialog/configurecomposerpage.cpp b/src/configuredialog/configurecomposerpage.cpp index 7b0dcc17d..f06d12cc5 100644 --- a/src/configuredialog/configurecomposerpage.cpp +++ b/src/configuredialog/configurecomposerpage.cpp @@ -1078,9 +1078,14 @@ void ComposerPage::HeadersTab::save() const int numberOfEntry = mHeaderList->topLevelItemCount(); for (int i = 0; i < numberOfEntry; ++i) { item = mHeaderList->topLevelItem(i); - if (!item->text(0).isEmpty()) { + const QString str = item->text(0).trimmed(); + if (!str.isEmpty()) { + if (str == QLatin1String("Content-Type")) { + KMessageBox::error(this, i18n("\'Content-Type\' is not an authorized string. This header will be not saved."), i18n("Invalid header")); + continue; + } KConfigGroup config(KMKernel::self()->config(), QStringLiteral("Mime #%1").arg(numValidEntries)); - config.writeEntry("name", item->text(0)); + config.writeEntry("name", str); config.writeEntry("value", item->text(1)); numValidEntries++; }