summaryrefslogtreecommitdiff
path: root/gnu/packages/patches/kpmcore-fix-tests.patch
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/patches/kpmcore-fix-tests.patch')
-rw-r--r--gnu/packages/patches/kpmcore-fix-tests.patch30
1 files changed, 30 insertions, 0 deletions
diff --git a/gnu/packages/patches/kpmcore-fix-tests.patch b/gnu/packages/patches/kpmcore-fix-tests.patch
new file mode 100644
index 0000000000..12043abe72
--- /dev/null
+++ b/gnu/packages/patches/kpmcore-fix-tests.patch
@@ -0,0 +1,30 @@
+Git commit c02d59aa6d314678cef9683f96b28e2a1abd82b7 by Andrius Štikonas, on behalf of Hartmut Goebel.
+Committed on 07/11/2019 at 22:16.
+Pushed by stikonas into branch '4.0'.
+
+Fix test for kpmcore: stop helper only if formerly started.
+
+See https://bugs.kde.org/413851 and https://phabricator.kde.org/D25161
+
+diff --git a/src/util/externalcommand.cpp b/src/util/externalcommand.cpp
+--- a/src/util/externalcommand.cpp
++++ b/src/util/externalcommand.cpp
+@@ -433,14 +433,17 @@
+
+ void ExternalCommand::stopHelper()
+ {
++ if (!helperStarted)
++ return;
+ auto *interface = new org::kde::kpmcore::externalcommand(QStringLiteral("org.kde.kpmcore.externalcommand"),
+ QStringLiteral("/Helper"), QDBusConnection::systemBus());
+ QByteArray request;
+ const quint64 nonce = interface->getNonce();
+ request.setNum(nonce);
+ QByteArray hash = QCryptographicHash::hash(request, QCryptographicHash::Sha512);
+ interface->exit(privateKey->signMessage(hash, QCA::EMSA3_Raw), nonce);
+
++ helperStarted = false;
+ delete privateKey;
+ delete init;
+ }
+