diff --git a/0001-fix-crash-when-GnuPG-does-not-output-curve-fields-fo.patch b/0001-fix-crash-when-GnuPG-does-not-output-curve-fields-fo.patch new file mode 100644 index 0000000..9d5c7e1 --- /dev/null +++ b/0001-fix-crash-when-GnuPG-does-not-output-curve-fields-fo.patch @@ -0,0 +1,34 @@ +From ac2ca301c6ef2d02810b762c618f1ce504382c4e Mon Sep 17 00:00:00 2001 +From: Rolf Eike Beer +Date: Tue, 3 Jan 2017 22:46:11 +0100 +Subject: [PATCH 1/3] fix crash when GnuPG does not output curve fields for + keys, take 3 + +secret keys, it is. + +BUG:374509 +CCBUGS:371410,373408 +FIXED-IN:16.12.1 +--- + kgpginterface.cpp | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/kgpginterface.cpp b/kgpginterface.cpp +index 6d87093..7c760c0 100644 +--- a/kgpginterface.cpp ++++ b/kgpginterface.cpp +@@ -342,9 +342,10 @@ readSecretKeysProcess(GPGProc &p) + keytype = Convert::toSubType(caps, true); + } + ++ const QString curve = (items > 16) ? lsp.at(16) : QString(); + result << KgpgKey(lsp.at(4), lsp.at(2).toUInt(), Convert::toTrust(lsp.at(1)), + Convert::toAlgo(lsp.at(3)), subtype, keytype, +- QDateTime::fromTime_t(lsp.at(5).toUInt()), lsp.at(16)); ++ QDateTime::fromTime_t(lsp.at(5).toUInt()), curve); + + secretkey = &result.last(); + +-- +2.10.2 + diff --git a/0002-Revert-Use-new-slot-syntax-for-KStandardAction-conne.patch b/0002-Revert-Use-new-slot-syntax-for-KStandardAction-conne.patch new file mode 100644 index 0000000..dd7a3f9 --- /dev/null +++ b/0002-Revert-Use-new-slot-syntax-for-KStandardAction-conne.patch @@ -0,0 +1,330 @@ +From 943853d0b7b8fd95d73e74266c9baa4168cdcd6f Mon Sep 17 00:00:00 2001 +From: Rolf Eike Beer +Date: Fri, 6 Jan 2017 01:04:06 +0100 +Subject: [PATCH 2/3] Revert "Use new slot syntax for KStandardAction + connections." + +This reverts commit be2ea5a6415eeb87a715fe530770e03ffd1dae12. +--- + editor/kgpgeditor.cpp | 20 +++++----- + keysmanager.cpp | 100 +++++++++++++++++++++++++------------------------- + 2 files changed, 60 insertions(+), 60 deletions(-) + +diff --git a/editor/kgpgeditor.cpp b/editor/kgpgeditor.cpp +index a584ef5..14f5577 100644 +--- a/editor/kgpgeditor.cpp ++++ b/editor/kgpgeditor.cpp +@@ -181,42 +181,42 @@ void KgpgEditor::initActions() + m_recentfiles->loadEntries( KConfigGroup(KSharedConfig::openConfig(), "Recent Files" ) ); + m_recentfiles->setMaxItems(KGpgSettings::recentFiles()); + +- QAction *action = actionCollection()->addAction(QLatin1String("file_encrypt"), this, &KgpgEditor::slotFilePreEnc); ++ QAction *action = actionCollection()->addAction(QLatin1String("file_encrypt"), this, SLOT(slotFilePreEnc())); + action->setIcon(QIcon::fromTheme( QLatin1String( "document-encrypt" ))); + action->setText(i18n("&Encrypt File...")); + +- action = actionCollection()->addAction(QLatin1String("file_decrypt"), this, &KgpgEditor::slotFilePreDec); ++ action = actionCollection()->addAction(QLatin1String("file_decrypt"), this, SLOT(slotFilePreDec())); + action->setIcon(QIcon::fromTheme( QLatin1String( "document-decrypt" ))); + action->setText(i18n("&Decrypt File...")); + +- action = actionCollection()->addAction(QLatin1String("key_manage"), this, &KgpgEditor::slotKeyManager); ++ action = actionCollection()->addAction(QLatin1String("key_manage"), this, SLOT(slotKeyManager())); + action->setIcon(QIcon::fromTheme( QLatin1String( "kgpg" ))); + action->setText(i18n("&Open Key Manager")); + +- action = actionCollection()->addAction(QLatin1String("sign_generate"), this, &KgpgEditor::slotPreSignFile); ++ action = actionCollection()->addAction(QLatin1String("sign_generate"), this, SLOT(slotPreSignFile())); + action->setText(i18n("&Generate Signature...")); + action->setIcon(QIcon::fromTheme( QLatin1String( "document-sign-key" ))); + +- action = actionCollection()->addAction(QLatin1String("sign_verify"), this, &KgpgEditor::slotPreVerifyFile); ++ action = actionCollection()->addAction(QLatin1String("sign_verify"), this, SLOT(slotPreVerifyFile())); + action->setText(i18n("&Verify Signature...")); + +- action = actionCollection()->addAction(QLatin1String("sign_check"), this, &KgpgEditor::slotCheckMd5); ++ action = actionCollection()->addAction(QLatin1String("sign_check"), this, SLOT(slotCheckMd5())); + action->setText(i18n("&Check MD5 Sum...")); + +- m_encodingaction = actionCollection()->add(QLatin1String("charsets"), this, &KgpgEditor::slotSetCharset); ++ m_encodingaction = actionCollection()->add(QLatin1String("charsets"), this, SLOT(slotSetCharset())); + m_encodingaction->setText(i18n("&Unicode (utf-8) Encoding")); + + actionCollection()->addAction(m_recentfiles->objectName(), m_recentfiles); + +- action = actionCollection()->addAction(QLatin1String("text_encrypt"), m_editor, &KgpgTextEdit::slotEncode); ++ action = actionCollection()->addAction(QLatin1String("text_encrypt"), m_editor, SLOT(slotEncode())); + action->setIcon(QIcon::fromTheme( QLatin1String( "document-encrypt" ))); + action->setText(i18n("En&crypt")); + +- action = actionCollection()->addAction(QLatin1String("text_decrypt"), m_editor, &KgpgTextEdit::slotDecode); ++ action = actionCollection()->addAction(QLatin1String("text_decrypt"), m_editor, SLOT(slotDecode())); + action->setIcon(QIcon::fromTheme( QLatin1String( "document-decrypt" ))); + action->setText(i18n("&Decrypt")); + +- action = actionCollection()->addAction(QLatin1String("text_sign_verify"), m_editor, &KgpgTextEdit::slotSignVerify); ++ action = actionCollection()->addAction(QLatin1String("text_sign_verify"), m_editor, SLOT(slotSignVerify())); + action->setIcon(QIcon::fromTheme( QLatin1String( "document-sign-key" ))); + action->setText(i18n("S&ign/Verify")); + } +diff --git a/keysmanager.cpp b/keysmanager.cpp +index aa7d0ed..e2b3781 100644 +--- a/keysmanager.cpp ++++ b/keysmanager.cpp +@@ -127,18 +127,18 @@ KeysManager::KeysManager(QWidget *parent) + setAttribute(Qt::WA_DeleteOnClose, false); + setWindowTitle(i18n("Key Management")); + +- KStandardAction::quit(this, &KeysManager::quitApp, actionCollection()); ++ KStandardAction::quit(this, SLOT(quitApp()), actionCollection()); + actionCollection()->addAction(KStandardAction::Preferences, QLatin1String( "options_configure" ), this, SLOT(showOptions())); + +- openEditor = actionCollection()->addAction(QLatin1String("kgpg_editor"), this, &KeysManager::slotOpenEditor); ++ openEditor = actionCollection()->addAction(QLatin1String("kgpg_editor"), this, SLOT(slotOpenEditor())); + openEditor->setIcon(QIcon::fromTheme( QLatin1String( "accessories-text-editor" ))); + openEditor->setText(i18n("&Open Editor")); + +- kserver = actionCollection()->addAction( QLatin1String("key_server"), this, &KeysManager::showKeyServer); ++ kserver = actionCollection()->addAction( QLatin1String("key_server"), this, SLOT(showKeyServer())); + kserver->setText( i18n("&Key Server Dialog") ); + kserver->setIcon( QIcon::fromTheme( QLatin1String( "network-server" )) ); + +- goToDefaultKey = actionCollection()->addAction(QLatin1String("go_default_key"), this, &KeysManager::slotGotoDefaultKey); ++ goToDefaultKey = actionCollection()->addAction(QLatin1String("go_default_key"), this, SLOT(slotGotoDefaultKey())); + goToDefaultKey->setIcon(QIcon::fromTheme( QLatin1String( "go-home" ))); + goToDefaultKey->setText(i18n("&Go to Default Key")); + actionCollection()->setDefaultShortcut(goToDefaultKey, QKeySequence(Qt::CTRL + Qt::Key_Home)); +@@ -155,146 +155,146 @@ KeysManager::KeysManager(QWidget *parent) + + QAction *action; + +- action = actionCollection()->addAction(QLatin1String("help_tipofday"), this, &KeysManager::slotTip); ++ action = actionCollection()->addAction(QLatin1String("help_tipofday"), this, SLOT(slotTip())); + action->setIcon( QIcon::fromTheme( QLatin1String( "help-hint" )) ); + action->setText( i18n("Tip of the &Day") ); + +- action = actionCollection()->addAction(QLatin1String("gpg_man"), this, &KeysManager::slotManpage); ++ action = actionCollection()->addAction(QLatin1String("gpg_man"), this, SLOT(slotManpage())); + action->setText( i18n("View GnuPG Manual") ); + action->setIcon( QIcon::fromTheme( QLatin1String( "help-contents" )) ); + +- action = actionCollection()->addAction(QLatin1String("key_refresh"), this, &KeysManager::refreshkey); ++ action = actionCollection()->addAction(QLatin1String("key_refresh"), this, SLOT(refreshkey())); + action->setIcon(QIcon::fromTheme( QLatin1String( "view-refresh" ))); + action->setText(i18n("&Refresh List")); + actionCollection()->setDefaultShortcuts(action, KStandardShortcut::reload()); + +- longId = actionCollection()->add(QLatin1String("show_long_keyid"), this, &KeysManager::slotShowLongId); ++ longId = actionCollection()->add(QLatin1String("show_long_keyid"), this, SLOT(slotShowLongId(bool))); + longId->setText(i18n("Show &Long Key Id")); + longId->setChecked(KGpgSettings::showLongKeyId()); + +- QAction *infoKey = actionCollection()->addAction(QLatin1String("key_info"), this, &KeysManager::keyproperties); ++ QAction *infoKey = actionCollection()->addAction(QLatin1String("key_info"), this, SLOT(keyproperties())); + infoKey->setIcon(QIcon::fromTheme( QLatin1String( "document-properties-key" ))); + infoKey->setText(i18n("K&ey Properties")); + +- QAction *openKeyUrl = actionCollection()->addAction(QLatin1String("key_url"), this, &KeysManager::slotOpenKeyUrl); ++ QAction *openKeyUrl = actionCollection()->addAction(QLatin1String("key_url"), this, SLOT(slotOpenKeyUrl())); + openKeyUrl->setIcon(QIcon::fromTheme(QLatin1String("applications-internet"))); + openKeyUrl->setText(i18n("&Open Key URL")); + +- editKey = actionCollection()->addAction(QLatin1String("key_edit"), this, &KeysManager::slotedit); ++ editKey = actionCollection()->addAction(QLatin1String("key_edit"), this, SLOT(slotedit())); + editKey->setIcon(QIcon::fromTheme( QLatin1String( "utilities-terminal" ))); + editKey->setText(i18n("Edit Key in &Terminal")); + actionCollection()->setDefaultShortcut(editKey, QKeySequence(Qt::ALT + Qt::Key_Return)); + +- QAction *generateKey = actionCollection()->addAction(QLatin1String("key_gener"), this, &KeysManager::slotGenerateKey); ++ QAction *generateKey = actionCollection()->addAction(QLatin1String("key_gener"), this, SLOT(slotGenerateKey())); + generateKey->setIcon(QIcon::fromTheme( QLatin1String( "key-generate-pair" ))); + generateKey->setText(i18n("&Generate Key Pair...")); + actionCollection()->setDefaultShortcuts(generateKey, KStandardShortcut::shortcut(KStandardShortcut::New)); + +- exportPublicKey = actionCollection()->addAction(QLatin1String("key_export"), this, &KeysManager::slotexport); ++ exportPublicKey = actionCollection()->addAction(QLatin1String("key_export"), this, SLOT(slotexport())); + exportPublicKey->setIcon(QIcon::fromTheme( QLatin1String( "document-export-key" ))); + actionCollection()->setDefaultShortcuts(exportPublicKey, KStandardShortcut::shortcut(KStandardShortcut::Copy)); + +- QAction *importKey = actionCollection()->addAction(QLatin1String("key_import"), this, &KeysManager::slotPreImportKey); ++ QAction *importKey = actionCollection()->addAction(QLatin1String("key_import"), this, SLOT(slotPreImportKey())); + importKey->setIcon(QIcon::fromTheme( QLatin1String( "document-import-key" ))); + importKey->setText(i18n("&Import Key...")); + actionCollection()->setDefaultShortcuts(importKey, KStandardShortcut::shortcut(KStandardShortcut::Paste)); + +- m_sendEmail = actionCollection()->addAction(QLatin1String("send_mail"), this, &KeysManager::slotSendEmail); ++ m_sendEmail = actionCollection()->addAction(QLatin1String("send_mail"), this, SLOT(slotSendEmail())); + m_sendEmail->setIcon(QIcon::fromTheme(QLatin1String("mail-send"))); + m_sendEmail->setText(i18n("Send Ema&il")); + +- QAction *newContact = actionCollection()->addAction(QLatin1String("add_kab"), this, &KeysManager::addToKAB); ++ QAction *newContact = actionCollection()->addAction(QLatin1String("add_kab"), this, SLOT(addToKAB())); + newContact->setIcon(QIcon::fromTheme( QLatin1String( "contact-new" ))); + newContact->setText(i18n("&Create New Contact in Address Book")); + +- createGroup = actionCollection()->addAction(QLatin1String("create_group"), this, &KeysManager::createNewGroup); ++ createGroup = actionCollection()->addAction(QLatin1String("create_group"), this, SLOT(createNewGroup())); + createGroup->setIcon(Images::group()); + +- editCurrentGroup = actionCollection()->addAction(QLatin1String("edit_group"), this, &KeysManager::editGroup); ++ editCurrentGroup = actionCollection()->addAction(QLatin1String("edit_group"), this, SLOT(editGroup())); + editCurrentGroup->setText(i18n("&Edit Group...")); + +- delGroup = actionCollection()->addAction(QLatin1String("delete_group"), this, &KeysManager::deleteGroup); ++ delGroup = actionCollection()->addAction(QLatin1String("delete_group"), this, SLOT(deleteGroup())); + delGroup->setText(i18n("&Delete Group")); + delGroup->setIcon(QIcon::fromTheme( QLatin1String( "edit-delete" ))); + +- m_groupRename = actionCollection()->addAction(QLatin1String("rename_group"), this, &KeysManager::renameGroup); ++ m_groupRename = actionCollection()->addAction(QLatin1String("rename_group"), this, SLOT(renameGroup())); + m_groupRename->setText(i18n("&Rename Group")); + m_groupRename->setIcon(QIcon::fromTheme( QLatin1String( "edit-rename" ))); + actionCollection()->setDefaultShortcut(m_groupRename, QKeySequence(Qt::Key_F2)); + +- deleteKey = actionCollection()->addAction(QLatin1String("key_delete"), this, &KeysManager::confirmdeletekey); ++ deleteKey = actionCollection()->addAction(QLatin1String("key_delete"), this, SLOT(confirmdeletekey())); + deleteKey->setIcon(QIcon::fromTheme( QLatin1String( "edit-delete" ))); + actionCollection()->setDefaultShortcut(deleteKey, QKeySequence(Qt::Key_Delete)); + +- setDefaultKey = actionCollection()->addAction(QLatin1String("key_default"), this, &KeysManager::slotSetDefKey); ++ setDefaultKey = actionCollection()->addAction(QLatin1String("key_default"), this, SLOT(slotSetDefKey())); + setDefaultKey->setText(i18n("Set as De&fault Key")); + +- QAction *addPhoto = actionCollection()->addAction(QLatin1String("add_photo"), this, &KeysManager::slotAddPhoto); ++ QAction *addPhoto = actionCollection()->addAction(QLatin1String("add_photo"), this, SLOT(slotAddPhoto())); + addPhoto->setText(i18n("&Add Photo...")); + +- QAction *addUid = actionCollection()->addAction(QLatin1String("add_uid"), this, &KeysManager::slotAddUid); ++ QAction *addUid = actionCollection()->addAction(QLatin1String("add_uid"), this, SLOT(slotAddUid())); + addUid->setText(i18n("&Add User Id...")); + +- QAction *exportSecretKey = actionCollection()->addAction(QLatin1String("key_sexport"), this, &KeysManager::slotexportsec); ++ QAction *exportSecretKey = actionCollection()->addAction(QLatin1String("key_sexport"), this, SLOT(slotexportsec())); + exportSecretKey->setText(i18n("Export Secret Key...")); + +- QAction *deleteKeyPair = actionCollection()->addAction(QLatin1String("key_pdelete"), this, &KeysManager::deleteseckey); ++ QAction *deleteKeyPair = actionCollection()->addAction(QLatin1String("key_pdelete"), this, SLOT(deleteseckey())); + deleteKeyPair->setText(i18n("Delete Key Pair")); + deleteKeyPair->setIcon(QIcon::fromTheme( QLatin1String( "edit-delete" ))); + +- m_revokeKey = actionCollection()->addAction(QLatin1String("key_revoke"), this, &KeysManager::revokeWidget); ++ m_revokeKey = actionCollection()->addAction(QLatin1String("key_revoke"), this, SLOT(revokeWidget())); + m_revokeKey->setText(i18n("Revoke Key...")); + +- QAction *regeneratePublic = actionCollection()->addAction(QLatin1String("key_regener"), this, &KeysManager::slotregenerate); ++ QAction *regeneratePublic = actionCollection()->addAction(QLatin1String("key_regener"), this, SLOT(slotregenerate())); + regeneratePublic->setText(i18n("&Regenerate Public Key")); + +- delUid = actionCollection()->addAction(QLatin1String("del_uid"), this, &KeysManager::slotDelUid); ++ delUid = actionCollection()->addAction(QLatin1String("del_uid"), this, SLOT(slotDelUid())); + delUid->setIcon(QIcon::fromTheme( QLatin1String( "edit-delete" ))); + +- setPrimUid = actionCollection()->addAction(QLatin1String("prim_uid"), this, &KeysManager::slotPrimUid); ++ setPrimUid = actionCollection()->addAction(QLatin1String("prim_uid"), this, SLOT(slotPrimUid())); + setPrimUid->setText(i18n("Set User Id as &Primary")); + +- QAction *openPhoto = actionCollection()->addAction(QLatin1String("key_photo"), this, &KeysManager::slotShowPhoto); ++ QAction *openPhoto = actionCollection()->addAction(QLatin1String("key_photo"), this, SLOT(slotShowPhoto())); + openPhoto->setIcon(QIcon::fromTheme( QLatin1String( "image-x-generic" ))); + openPhoto->setText(i18n("&Open Photo")); + +- QAction *deletePhoto = actionCollection()->addAction(QLatin1String("delete_photo"), this, &KeysManager::slotDeletePhoto); ++ QAction *deletePhoto = actionCollection()->addAction(QLatin1String("delete_photo"), this, SLOT(slotDeletePhoto())); + deletePhoto->setIcon(QIcon::fromTheme( QLatin1String( "edit-delete" ))); + deletePhoto->setText(i18n("&Delete Photo")); + +- delSignKey = actionCollection()->addAction(QLatin1String("key_delsign"), this, &KeysManager::delsignkey); ++ delSignKey = actionCollection()->addAction(QLatin1String("key_delsign"), this, SLOT(delsignkey())); + delSignKey->setIcon(QIcon::fromTheme( QLatin1String( "edit-delete" ))); + delSignKey->setEnabled(false); + +- importAllSignKeys = actionCollection()->addAction(QLatin1String("key_importallsign"), this, &KeysManager::importallsignkey); ++ importAllSignKeys = actionCollection()->addAction(QLatin1String("key_importallsign"), this, SLOT(importallsignkey())); + importAllSignKeys->setIcon(QIcon::fromTheme( QLatin1String( "document-import" ))); + importAllSignKeys->setText(i18n("Import &Missing Signatures From Keyserver")); + +- refreshKey = actionCollection()->addAction(QLatin1String("key_server_refresh"), this, &KeysManager::refreshKeyFromServer); ++ refreshKey = actionCollection()->addAction(QLatin1String("key_server_refresh"), this, SLOT(refreshKeyFromServer())); + refreshKey->setIcon(QIcon::fromTheme( QLatin1String( "view-refresh" ))); + +- signKey = actionCollection()->addAction(QLatin1String("key_sign"), this, &KeysManager::signkey); ++ signKey = actionCollection()->addAction(QLatin1String("key_sign"), this, SLOT(signkey())); + signKey->setIcon(QIcon::fromTheme( QLatin1String( "document-sign-key" ))); + +- signUid = actionCollection()->addAction(QLatin1String("key_sign_uid"), this, &KeysManager::signuid); ++ signUid = actionCollection()->addAction(QLatin1String("key_sign_uid"), this, SLOT(signuid())); + signUid->setIcon(QIcon::fromTheme( QLatin1String( "document-sign-key" ))); + +- signMailUid = actionCollection()->addAction(QLatin1String("key_sign_mail_uid"), this, &KeysManager::caff); ++ signMailUid = actionCollection()->addAction(QLatin1String("key_sign_mail_uid"), this, SLOT(caff())); + signMailUid->setIcon(QIcon::fromTheme( QLatin1String( "document-sign-key" ))); + +- importSignatureKey = actionCollection()->addAction(QLatin1String("key_importsign"), this, &KeysManager::preimportsignkey); ++ importSignatureKey = actionCollection()->addAction(QLatin1String("key_importsign"), this, SLOT(preimportsignkey())); + importSignatureKey->setIcon(QIcon::fromTheme( QLatin1String( "document-import-key" ))); + +- sTrust = actionCollection()->add(QLatin1String("show_trust"), this, &KeysManager::slotShowTrust); ++ sTrust = actionCollection()->add(QLatin1String("show_trust"), this, SLOT(slotShowTrust())); + sTrust->setText(i18n("Trust")); + +- sSize = actionCollection()->add(QLatin1String("show_size"), this, &KeysManager::slotShowSize); ++ sSize = actionCollection()->add(QLatin1String("show_size"), this, SLOT(slotShowSize())); + sSize->setText(i18n("Size")); + +- sCreat = actionCollection()->add(QLatin1String("show_creat"), this, &KeysManager::slotShowCreation); ++ sCreat = actionCollection()->add(QLatin1String("show_creat"), this, SLOT(slotShowCreation())); + sCreat->setText(i18n("Creation")); + +- sExpi = actionCollection()->add(QLatin1String("show_expi"), this, &KeysManager::slotShowExpiration); ++ sExpi = actionCollection()->add(QLatin1String("show_expi"), this, SLOT(slotShowExpiration())); + sExpi->setText(i18n("Expiration")); + + photoProps = actionCollection()->add(QLatin1String( "photo_settings" )); +@@ -339,7 +339,7 @@ KeysManager::KeysManager(QWidget *parent) + + connect(iview, &KeyTreeView::returnPressed, this, &KeysManager::slotDefaultAction); + +- hPublic = actionCollection()->add(QLatin1String("show_secret"), iproxy, &KeyListProxyModel::setOnlySecret); ++ hPublic = actionCollection()->add(QLatin1String("show_secret"), iproxy, SLOT(setOnlySecret(bool))); + hPublic->setIcon(QIcon::fromTheme( QLatin1String( "view-key-secret" ))); + hPublic->setText(i18n("&Show Only Secret Keys")); + hPublic->setChecked(KGpgSettings::showSecret()); +@@ -440,7 +440,7 @@ KeysManager::KeysManager(QWidget *parent) + actionCollection()->addAction(QLatin1String( "search_line" ), searchLineAction); + searchLineAction->setDefaultWidget(searchWidget); + +- action = actionCollection()->addAction(QLatin1String("search_focus"), m_listviewsearch, static_cast(&QWidget::setFocus)); ++ action = actionCollection()->addAction(QLatin1String("search_focus"), m_listviewsearch, SLOT(setFocus())); + action->setText(i18nc("Name of the action that gives the focus to the search line", "Focus Search Line")); + actionCollection()->setDefaultShortcut(action, QKeySequence(Qt::Key_F6)); + connect(m_listviewsearch, &QLineEdit::textChanged, iproxy, &KeyListProxyModel::setFilterFixedString); +@@ -2691,21 +2691,21 @@ KeysManager::setupTrayIcon() + + QMenu *conf_menu = m_trayicon->contextMenu(); + +- QAction *KgpgOpenManager = actionCollection()->addAction(QLatin1String("kgpg_manager"), this, &KeysManager::show); ++ QAction *KgpgOpenManager = actionCollection()->addAction(QLatin1String("kgpg_manager"), this, SLOT(show())); + KgpgOpenManager->setIcon(QIcon::fromTheme( QLatin1String( "kgpg" ))); + KgpgOpenManager->setText(i18n("Ke&y Manager")); + +- QAction *KgpgEncryptClipboard = actionCollection()->addAction(QLatin1String("clip_encrypt"), this, &KeysManager::clipEncrypt); ++ QAction *KgpgEncryptClipboard = actionCollection()->addAction(QLatin1String("clip_encrypt"), this, SLOT(clipEncrypt())); + KgpgEncryptClipboard->setText(i18n("&Encrypt Clipboard")); + +- QAction *KgpgDecryptClipboard = actionCollection()->addAction(QLatin1String("clip_decrypt"), this, &KeysManager::clipDecrypt); ++ QAction *KgpgDecryptClipboard = actionCollection()->addAction(QLatin1String("clip_decrypt"), this, SLOT(clipDecrypt())); + KgpgDecryptClipboard->setText(i18n("&Decrypt Clipboard")); + +- QAction *KgpgSignClipboard = actionCollection()->addAction(QLatin1String("clip_sign"), this, &KeysManager::clipSign); ++ QAction *KgpgSignClipboard = actionCollection()->addAction(QLatin1String("clip_sign"), this, SLOT(clipSign())); + KgpgSignClipboard->setText(i18n("&Sign/Verify Clipboard")); + KgpgSignClipboard->setIcon(QIcon::fromTheme( QLatin1String( "document-sign-key" ))); + +- QAction *KgpgPreferences = KStandardAction::preferences(this, &KeysManager::showOptions, actionCollection()); ++ QAction *KgpgPreferences = KStandardAction::preferences(this, SLOT(showOptions()), actionCollection()); + + conf_menu->addAction( KgpgEncryptClipboard ); + conf_menu->addAction( KgpgDecryptClipboard ); +-- +2.10.2 + diff --git a/0003-Revert-Increase-KF5-requirement.patch b/0003-Revert-Increase-KF5-requirement.patch new file mode 100644 index 0000000..2be929b --- /dev/null +++ b/0003-Revert-Increase-KF5-requirement.patch @@ -0,0 +1,26 @@ +From 280e6a748f632d448a94744ee13f3aeda24e15be Mon Sep 17 00:00:00 2001 +From: Rolf Eike Beer +Date: Fri, 6 Jan 2017 01:04:19 +0100 +Subject: [PATCH 3/3] Revert "Increase KF5 requirement" + +This reverts commit fee6927a7396bbf1a6a8d1ad04f3fe6a81881d08. +--- + CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 8e2a213..86fddda 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -30,7 +30,7 @@ find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS + ) + + # Load the frameworks we need +-find_package(KF5 5.28 REQUIRED ++find_package(KF5 5.23 REQUIRED + Archive + DocTools + Codecs +-- +2.10.2 + diff --git a/kgpg.changes b/kgpg.changes index c46e7ce..ba6523c 100644 --- a/kgpg.changes +++ b/kgpg.changes @@ -1,3 +1,13 @@ +------------------------------------------------------------------- +Fri Jan 6 01:17:01 UTC 2017 - wbauer@tmo.at + +- Add 0001-fix-crash-when-GnuPG-does-not-output-curve-fields-fo.patch, + 0002-Revert-Use-new-slot-syntax-for-KStandardAction-conne.patch, + 0003-Revert-Increase-KF5-requirement.patch (as requested by the + upstream maintainer) to fix the following issues: + * fix build with older KF5 versions + * include another crash fix (kde#374509) + ------------------------------------------------------------------- Tue Dec 13 19:43:38 UTC 2016 - tittiatcoke@gmail.com diff --git a/kgpg.spec b/kgpg.spec index 909abab..604b29f 100644 --- a/kgpg.spec +++ b/kgpg.spec @@ -31,6 +31,10 @@ Url: http://www.kde.org Source0: kgpg-%{version}.tar.xz Patch1: kgpg-autostart.diff Patch2: fix-build-gcc48.patch +# The following patches are from upstream and added on the upstream maintainers request, see https://build.opensuse.org/request/show/448937 +Patch3: 0001-fix-crash-when-GnuPG-does-not-output-curve-fields-fo.patch +Patch4: 0002-Revert-Use-new-slot-syntax-for-KStandardAction-conne.patch +Patch5: 0003-Revert-Increase-KF5-requirement.patch BuildRequires: akonadi-contact-devel BuildRequires: boost-devel BuildRequires: extra-cmake-modules @@ -63,6 +67,9 @@ Kgpg is a simple GUI for gpg %setup -q -n kgpg-%{version} %patch1 %patch2 -p1 +%patch3 -p1 +%patch4 -p1 +%patch5 -p1 %build %cmake_kf5 -d build