From 6299a2fee34e53938d7c230e7e29611a6bcdb2b9 Mon Sep 17 00:00:00 2001 From: Christian Mollekopf Date: Tue, 20 Feb 2018 19:18:02 +0100 Subject: This is really a boolean in disguise --- framework/src/domain/mime/mimetreeparser/messagepart.cpp | 14 ++++++-------- framework/src/domain/mime/mimetreeparser/messagepart.h | 3 ++- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/framework/src/domain/mime/mimetreeparser/messagepart.cpp b/framework/src/domain/mime/mimetreeparser/messagepart.cpp index e628645c..5f14b7bd 100644 --- a/framework/src/domain/mime/mimetreeparser/messagepart.cpp +++ b/framework/src/domain/mime/mimetreeparser/messagepart.cpp @@ -866,13 +866,13 @@ void SignedMessagePart::startVerificationDetached(const QByteArray &text, KMime: if (!signature.isEmpty()) { qWarning() << "We have a signature"; auto result = ctx->verifyDetachedSignature(fromBA(signature), fromBA(text)); - setVerificationResult(result, textNode, text); + setVerificationResult(result, false, text); } else { qWarning() << "We have no signature"; QGpgME::QByteArrayDataProvider out; GpgME::Data outdata(&out); auto result = ctx->verifyOpaqueSignature(fromBA(text), outdata); - setVerificationResult(result, textNode, out.data()); + setVerificationResult(result, false, out.data()); } if (!mMetaData.isSigned) { @@ -880,7 +880,7 @@ void SignedMessagePart::startVerificationDetached(const QByteArray &text, KMime: } } -void SignedMessagePart::setVerificationResult(const GpgME::VerificationResult &result, KMime::Content *textNode, const QByteArray &plainText) +void SignedMessagePart::setVerificationResult(const GpgME::VerificationResult &result, bool parseText, const QByteArray &plainText) { auto signatures = result.signatures(); mVerifiedText = plainText; @@ -888,12 +888,10 @@ void SignedMessagePart::setVerificationResult(const GpgME::VerificationResult &r if (!signatures.empty()) { mMetaData.isSigned = true; sigStatusToMetaData(signatures.front()); - if (mNode && !textNode) { + if (mNode && parseText) { mOtp->mNodeHelper->setPartMetaData(mNode, mMetaData); } - - if (!mVerifiedText.isEmpty() && !textNode) { - + if (!mVerifiedText.isEmpty() && parseText) { auto tempNode = new KMime::Content(); tempNode->setContent(KMime::CRLFtoLF(mVerifiedText.constData())); tempNode->parse(); @@ -1013,7 +1011,7 @@ bool EncryptedMessagePart::okDecryptMIME(KMime::Content &data) if (verifyResult.signatures().size() > 0) { //We simply attach a signed message part to indicate that this content is also signed auto subPart = SignedMessagePart::Ptr(new SignedMessagePart(mOtp, QString::fromUtf8(plainText), mProtocol, mFromAddress, nullptr, nullptr)); - subPart->setVerificationResult(verifyResult, nullptr, plainText); + subPart->setVerificationResult(verifyResult, true, plainText); appendSubPart(subPart); } diff --git a/framework/src/domain/mime/mimetreeparser/messagepart.h b/framework/src/domain/mime/mimetreeparser/messagepart.h index 75208e52..b958ae8e 100644 --- a/framework/src/domain/mime/mimetreeparser/messagepart.h +++ b/framework/src/domain/mime/mimetreeparser/messagepart.h @@ -364,7 +364,8 @@ public: private: void sigStatusToMetaData(const GpgME::Signature &signature); - void setVerificationResult(const GpgME::VerificationResult &result, KMime::Content *textNode, const QByteArray &plainText); + void setVerificationResult(const GpgME::VerificationResult &result, bool parseText, const QByteArray &plainText); + protected: GpgME::Protocol mProtocol; QString mFromAddress; -- cgit v1.2.3