[git] GPGME - branch, master, updated. gpgme-1.7.0-43-g5f64018

by Andre Heinecke cvs at cvs.gnupg.org
Tue Oct 11 19:58:27 CEST 2016


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GnuPG Made Easy".

The branch, master has been updated
       via  5f64018af89e07dd0494775d6dfc82564536d6e0 (commit)
       via  e5a35af5573651b96a90ef4a537b040333595472 (commit)
       via  ce7385caabb57e5435695cc912acffe2815770b7 (commit)
      from  54f94b14e2bb9b38ffd89f509406bfbd012da632 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 5f64018af89e07dd0494775d6dfc82564536d6e0
Author: Andre Heinecke <aheinecke at intevation.de>
Date:   Tue Oct 11 19:57:35 2016 +0200

    Mention Qt API fixes in news
    
    --

diff --git a/NEWS b/NEWS
index 72f6f77..ebe2dd9 100644
--- a/NEWS
+++ b/NEWS
@@ -1,6 +1,11 @@
 Noteworthy changes in version 1.7.1 (unreleased) [C26/A15/R_]
 ------------------------------------------------
 
+ * qt: Missed API from the Qt Binding inclusion has
+   been added again.
+
+ * qt: abstractimportjob.h is now installed to that
+   ImportJobs can be used again.
 
  * Interface changes relative to the 1.7.0 release:
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -10,6 +15,8 @@ Noteworthy changes in version 1.7.1 (unreleased) [C26/A15/R_]
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  WksPublishJob::startReceive     NEW.
  WksPublishJob::startRecieve     REMOVED.
+ MultiDeleteJob                  NEW.
+ AbstractImportJob               NEW.
 
  * cpp Interface changes relative to the 1.7.0 release:
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

commit e5a35af5573651b96a90ef4a537b040333595472
Author: Daniel Vrátil <dvratil at kde.org>
Date:   Tue Oct 11 19:32:54 2016 +0200

    qt: Add missing implementation of MultiDeleteJob
    
    * lang/qt/src/multideletejob.h: Fix include, cryptobackend.h is now
    called protocol.h
    * lang/qt/src/multideletejob.cpp: New file.
    * lang/qt/src/Makefile.am: Add multideletejob.cpp.

diff --git a/lang/qt/src/Makefile.am b/lang/qt/src/Makefile.am
index df93a1d..e09e0d9 100644
--- a/lang/qt/src/Makefile.am
+++ b/lang/qt/src/Makefile.am
@@ -22,7 +22,7 @@ EXTRA_DIST = QGpgmeConfig.cmake.in.in QGpgmeConfigVersion.cmake.in \
              gpgme_backend_debug.h qgpgme_version.h.in
 
 qgpgme_sources = \
-    dataprovider.cpp job.cpp qgpgmeadduseridjob.cpp \
+    dataprovider.cpp job.cpp multideletejob.cpp qgpgmeadduseridjob.cpp \
     qgpgmebackend.cpp qgpgmechangeexpiryjob.cpp qgpgmechangeownertrustjob.cpp \
     qgpgmechangepasswdjob.cpp qgpgmedecryptjob.cpp \
     qgpgmedecryptverifyjob.cpp qgpgmedeletejob.cpp qgpgmedownloadjob.cpp \
@@ -76,6 +76,7 @@ qgpgme_headers= \
 
 camelcase_headers= \
     AddUserIDJob \
+    AbstractImportJob \
     ChangeExpiryJob \
     ChangeOwnerTrustJob \
     ChangePasswdJob \
diff --git a/lang/qt/src/multideletejob.cpp b/lang/qt/src/multideletejob.cpp
new file mode 100644
index 0000000..67f2a78
--- /dev/null
+++ b/lang/qt/src/multideletejob.cpp
@@ -0,0 +1,117 @@
+/*
+    multideletejob.cpp
+
+    This file is part of qgpgme, the Qt API binding for gpgme
+    Copyright (c) 2004 Klarälvdalens Datakonsult AB
+
+    QGpgME is free software; you can redistribute it and/or
+    modify it under the terms of the GNU General Public License as
+    published by the Free Software Foundation; either version 2 of the
+    License, or (at your option) any later version.
+
+    QGpgME is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+    General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
+
+    In addition, as a special exception, the copyright holders give
+    permission to link the code of this program with any edition of
+    the Qt library by Trolltech AS, Norway (or with modified versions
+    of Qt that use the same license as Qt), and distribute linked
+    combinations including the two.  You must obey the GNU General
+    Public License in all respects for all of the code used other than
+    Qt.  If you modify this file, you may extend this exception to
+    your version of the file, but you are not obligated to do so.  If
+    you do not wish to do so, delete this exception statement from
+    your version.
+*/
+
+#ifdef HAVE_CONFIG_H
+ #include "config.h"
+#endif
+
+#include "multideletejob.h"
+#include "protocol.h"
+#include "deletejob.h"
+
+#include <key.h>
+#include <context.h>
+#include <data.h>
+
+#include <iterator>
+
+#include <assert.h>
+
+QGpgME::MultiDeleteJob::MultiDeleteJob(const Protocol *protocol)
+    : Job(0),
+      mProtocol(protocol),
+      mJob(0)
+{
+    assert(protocol);
+}
+
+QGpgME::MultiDeleteJob::~MultiDeleteJob()
+{
+
+}
+
+GpgME::Error QGpgME::MultiDeleteJob::start(const std::vector<GpgME::Key> &keys, bool allowSecretKeyDeletion)
+{
+    mKeys = keys;
+    mAllowSecretKeyDeletion = allowSecretKeyDeletion;
+    mIt = mKeys.begin();
+
+    const GpgME::Error err = startAJob();
+
+    if (err) {
+        deleteLater();
+    }
+    return err;
+}
+
+void QGpgME::MultiDeleteJob::slotCancel()
+{
+    if (mJob) {
+        mJob->slotCancel();
+    }
+    mIt = mKeys.end();
+}
+
+void QGpgME::MultiDeleteJob::slotResult(const GpgME::Error &err)
+{
+    mJob = 0;
+    GpgME::Error error = err;
+    if (error ||  // error in last op
+            mIt == mKeys.end() || // (shouldn't happen)
+            ++mIt == mKeys.end() || // was the last key
+            (error = startAJob())) {  // error starting the job for the new key
+        Q_EMIT done();
+        Q_EMIT result(error, error && mIt != mKeys.end() ? *mIt : GpgME::Key::null);
+        deleteLater();
+        return;
+    }
+
+    const int current = mIt - mKeys.begin();
+    const int total = mKeys.size();
+    Q_EMIT progress(QStringLiteral("%1/%2").arg(current).arg(total), current, total);
+}
+
+GpgME::Error QGpgME::MultiDeleteJob::startAJob()
+{
+    if (mIt == mKeys.end()) {
+        return GpgME::Error(0);
+    }
+    mJob = mProtocol->deleteJob();
+    assert(mJob);   // FIXME: we need a way to generate errors ourselves,
+    // but I don't like the dependency on gpg-error :/
+
+    connect(mJob.data(), &DeleteJob::result, this, &MultiDeleteJob::slotResult);
+
+    return mJob->start(*mIt, mAllowSecretKeyDeletion);
+}
+
+#include "multideletejob.moc"
diff --git a/lang/qt/src/multideletejob.h b/lang/qt/src/multideletejob.h
index 8915cd1..8e9eb14 100644
--- a/lang/qt/src/multideletejob.h
+++ b/lang/qt/src/multideletejob.h
@@ -36,7 +36,7 @@
 
 #include "qgpgme_export.h"
 #include "job.h"
-#include "cryptobackend.h"
+#include "protocol.h"
 
 #include <QPointer>
 

commit ce7385caabb57e5435695cc912acffe2815770b7
Author: Daniel Vrátil <dvratil at kde.org>
Date:   Tue Oct 11 19:32:08 2016 +0200

    qt: Install abstractimportjob.h
    
    * lang/cpp/src/Makefile.am: Install abstractimportjob.h since it's
    included from importjob.h
    
    --
    Fixes build when someone inclues importjob.h in their code.

diff --git a/lang/qt/src/Makefile.am b/lang/qt/src/Makefile.am
index 96b77b4..df93a1d 100644
--- a/lang/qt/src/Makefile.am
+++ b/lang/qt/src/Makefile.am
@@ -39,6 +39,7 @@ qgpgme_sources = \
 
 # If you add one here make sure that you also add one in camelcase
 qgpgme_headers= \
+    abstractimportjob.h \
     adduseridjob.h \
     changeexpiryjob.h \
     changeownertrustjob.h \
@@ -109,7 +110,6 @@ camelcase_headers= \
 
 private_qgpgme_headers = \
     qgpgme_export.h \
-    abstractimportjob.h \
     protocol_p.h \
     qgpgmeadduseridjob.h \
     qgpgmebackend.h \

-----------------------------------------------------------------------

Summary of changes:
 NEWS                           |   7 +++
 lang/qt/src/Makefile.am        |   5 +-
 lang/qt/src/multideletejob.cpp | 117 +++++++++++++++++++++++++++++++++++++++++
 lang/qt/src/multideletejob.h   |   2 +-
 4 files changed, 128 insertions(+), 3 deletions(-)
 create mode 100644 lang/qt/src/multideletejob.cpp


hooks/post-receive
-- 
GnuPG Made Easy
http://git.gnupg.org




More information about the Gnupg-commits mailing list