From 2f441b2e6ee34daca366f64d256d2aed11555d1e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sandro=20Knau=C3=9F?= Date: Wed, 9 Nov 2016 12:03:26 +0100 Subject: fix encoding issues --- framework/domain/mimetreeparser/interface.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'framework/domain/mimetreeparser/interface.cpp') diff --git a/framework/domain/mimetreeparser/interface.cpp b/framework/domain/mimetreeparser/interface.cpp index 283ced9b..6184ae82 100644 --- a/framework/domain/mimetreeparser/interface.cpp +++ b/framework/domain/mimetreeparser/interface.cpp @@ -626,7 +626,7 @@ QByteArray Content::charset() const QString Content::encodedContent() const { - return encodedContent(charset()); + return QString::fromUtf8(content()); } QString Content::encodedContent(const QByteArray &charset) const @@ -775,7 +775,7 @@ void SinglePartPrivate::fillFrom(MimeTreeParser::TextMessagePart::Ptr part) mContent.clear(); foreach (const auto &mp, part->subParts()) { auto d_ptr = new ContentPrivate; - d_ptr->mContent = mp->text().toLocal8Bit(); + d_ptr->mContent = mp->text().toUtf8(); d_ptr->mParent = q; const auto enc = mp.dynamicCast(); auto sig = mp.dynamicCast(); @@ -799,7 +799,7 @@ void SinglePartPrivate::fillFrom(MimeTreeParser::HtmlMessagePart::Ptr part) { mType = "html"; mContent.clear(); - mContent.append(std::make_shared(part->text().toLocal8Bit(), q)); + mContent.append(std::make_shared(part->text().toUtf8(), q)); q->reachParentD()->createMailMime(part); } @@ -809,13 +809,15 @@ void SinglePartPrivate::fillFrom(MimeTreeParser::AttachmentMessagePart::Ptr part q->reachParentD()->createMailMime(part.staticCast()); const auto mimetype = q->mailMime()->mimetype(); const auto content = q->mailMime()->decodedContent(); - mType = mimetype.name().toUtf8(); mContent.clear(); if (mimetype == mimeDb.mimeTypeForName("text/plain")) { + mType = "plaintext"; mContent.append(std::make_shared(content, q)); } else if (mimetype == mimeDb.mimeTypeForName("text/html")) { + mType = "html"; mContent.append(std::make_shared(content, q)); } else { + mType = mimetype.name().toUtf8(); mContent.append(std::make_shared(content, q)); } } -- cgit v1.2.3