From f516638b7fe9592837389826a6152a7e1b251c54 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 30 May 2020 11:44:06 +0100 Subject: gentoo resync : 30.05.2020 --- kde-apps/konsole/Manifest | 7 +- .../files/konsole-20.04.1-crash-on-close.patch | 57 +++++++++++ ...e-20.04.1-qt-5.15-set-text-encoding-crash.patch | 109 +++++++++++++++++++++ .../files/konsole-20.04.1-segfault-on-close.patch | 44 +++++++++ kde-apps/konsole/konsole-20.04.0.ebuild | 62 ------------ kde-apps/konsole/konsole-20.04.1-r2.ebuild | 68 +++++++++++++ 6 files changed, 283 insertions(+), 64 deletions(-) create mode 100644 kde-apps/konsole/files/konsole-20.04.1-crash-on-close.patch create mode 100644 kde-apps/konsole/files/konsole-20.04.1-qt-5.15-set-text-encoding-crash.patch create mode 100644 kde-apps/konsole/files/konsole-20.04.1-segfault-on-close.patch delete mode 100644 kde-apps/konsole/konsole-20.04.0.ebuild create mode 100644 kde-apps/konsole/konsole-20.04.1-r2.ebuild (limited to 'kde-apps/konsole') diff --git a/kde-apps/konsole/Manifest b/kde-apps/konsole/Manifest index 4444eb952808..2cdaac1f2a33 100644 --- a/kde-apps/konsole/Manifest +++ b/kde-apps/konsole/Manifest @@ -1,8 +1,11 @@ AUX konsole-19.12.2-darkbackground-detect.patch 823 BLAKE2B 8b28b3823c2b42b9cc511c7535efc539ad869216374fb89c7a8ee17df460fbcae5fc0ca556d63cb2c39a248947aca2fcb6c49100c53985c0af032ad8a20f606a SHA512 e2a91949ff80579a50c3e16d83d493f42258cf889e443dde464f23f158428157a9b049d7bf684acf5914436dcef12b664516d8d9fd76ccf2f66d138dc0aec3dc AUX konsole-19.12.3-kf5bookmarks-5.69.patch 4409 BLAKE2B a10546cf5708b4e47d237075446db413b714c4a07a6a2d3dd1a7f9e8a22b5e433db06521c3f3ce1d465ccf0a336c199bd3d10ecafe92f5324865f61bd4baa2cb SHA512 2188f1a982ff4395221003b15aec37293e5b18f2c588b3138838770f8795d7b2ea73f40a00ae5793cb1de1f1518b7887d56c5037f50442f77ae4bb8540a13679 AUX konsole-19.12.3-no-ccache.patch 1784 BLAKE2B 39b0a9e6406a614dd49434ab0f872f9956d2f3f54e3a9fb1693f2db6aefa779ad83d8cacea0503ed3459edcfec230588f14e747fb973678c41518630f9d0ca4c SHA512 83c99ca0c6b3b3562691c5d77746c85f3ef6a736cfa573420c716cefe806138dde5737e94132488e8b2d9938f7b5052ed63ace674cef82a8a668548033b60ec7 +AUX konsole-20.04.1-crash-on-close.patch 1500 BLAKE2B 6b40785efd343b681a7b35741d9a48e3dc9bcb8dacd96c4c2238dec0944518d3f39727137e69e52c40c7928a876220f85b44bbff4dd2b5b9439032b8953e8900 SHA512 b728f79996229421323c43b5867a2f7fcce8ae4a5146e1be2a6def87929cae1e724d1124f78c1a33d63d8b973f37de53b97805dc61ba3500dbbbe529b9884244 +AUX konsole-20.04.1-qt-5.15-set-text-encoding-crash.patch 4206 BLAKE2B 13b762ff141136b65183b0b7140a4d638c1eb76e2a2db51e7a2f9afb9101cadf6210f3eb627065bff466caf1f52ecd57c189746a83139f7f20ed62d0d136b213 SHA512 5b02d47e127b040e1f7a9ec9036fb9e86f3de68c4f294dc25afca53229173794f3909bee1b62d701856c2f220d2af17add32d5c907df02f131e4a967a21093f3 +AUX konsole-20.04.1-segfault-on-close.patch 1689 BLAKE2B 560624e969f422cc1fff715069d85f307578097aab2c1ad973466f360568ce4c3582a15a1ab55509521d88ca6609739ec1cb116d36faf491c7794e1aa964e356 SHA512 d205d7126897686803f8f8948c87e1889e21450ddc2e380fe0403e040f4aa21146a688d856d7a3e107ad074f3a8025a93b212d23c666c82c348294bf64c59166 DIST konsole-19.12.3.tar.xz 1160780 BLAKE2B b4a6c794951081ff9354c68c1177836b8462c0e2ec19b39b08c6e90f8837b58109e5559ab93cd1f7520a6ffbbd651d0d92bcc3c359815e7264744fcfbde02cb0 SHA512 980a7eab4efb219acdda8873318980ba14cf7d3fc4f78ac171f8ed1e11400b3028150140aac192820771a0ac8e596fc0f6497c4a44d74bbd1c421f72a39da289 -DIST konsole-20.04.0.tar.xz 1165700 BLAKE2B a9bc9d914da8e780fca19787723e8e97d3875908dea132a982fb6a07902af8e6733cde50d4b3d0c76c5be9837cc0e68d4fcc8672f0189e16209bd7a6c29576a7 SHA512 eb260752cf62c418349a8a2ee91e5a9a8f0450190f6d8ffe3c6ac4d7131e858e84f0f520c447588f60143564eaac9b5f340d90562fe507ec27846a82d0bc73f4 +DIST konsole-20.04.1.tar.xz 1165784 BLAKE2B 160dc2c0f4f5560e060e13ffc2eac0a02ed33060e66778e92eaea2c7c03060fbf2e8107d26f401ea7f96b33838f23de13737f48db11cce7b5b1eff4bae9ffc8e SHA512 608bc4e9652e1129b219867c01b40ea2aba4044b9827b6b39ef0d2fed436dfd091c3cd4f568673122761ceb3106e8304d490b0ad5b73210d1890a5ec9e516fa3 EBUILD konsole-19.12.3-r1.ebuild 1897 BLAKE2B a11f6ccdfee28af3dcd7ed941ef9fce07cbc8792a167b7145abf2147d39bc470a7981fac8e2274204ce52859c07a9a9d48b25e94b9eebc566cdf59b3e675ec8f SHA512 c314087217a721d51d22d7c3360ef1c773086b20c38a0fd4ce6710aa1006a3cef07ca64d37debe3fdfdeef2d8c37b4780d13fbff600f67f315019d5a4958a177 -EBUILD konsole-20.04.0.ebuild 1676 BLAKE2B d74888a502eed85541a767731a78d7328af07d6f648f0ad59019fc6fc82cb66da271d71343561c107814f4dc11449f78603247c2313432809fa8f0318d6dbadd SHA512 a04e496002377aa3e9ed496c5f44379da1a746dd2cfa977913252e3e2ba04cf95976e5b55d89182c998118cf26b40ca419867739be6ee5c0df8a4c9b60c93253 +EBUILD konsole-20.04.1-r2.ebuild 1909 BLAKE2B c5aa5875a9b6c412d2bd518480ac82e5041f1bb59ec0383f04168f7d8f92245abb1b140f513f8f1269046c5cc07fefeb6cae1b114cd4d3d78a56b262bdfaf39c SHA512 70cee59aef93d07d2fe8f99ebd9bf4e909ba277eb53ced5e848783b63fb406c98b80e3f29318b39678436b85e912b0594ad4bd9dc4565d5e677ebf1c513377c2 MISC metadata.xml 249 BLAKE2B ad415db89e5dee1627aa77f44ded9d4e1e5b8217d06c7ca25bbaa3fe92ce67c2b1090957c45a821b407d7927e5af798498aa6a5b903895ee1af8ee20a446c7f7 SHA512 76a5a340b13f0053ca3c5e94ed24380ea8d29b45ac8655419e22eaadb1e4a827c04d2e7e36b65145c4964e6526f656618fc6ac144e277ef53cb7373e6239e3c3 diff --git a/kde-apps/konsole/files/konsole-20.04.1-crash-on-close.patch b/kde-apps/konsole/files/konsole-20.04.1-crash-on-close.patch new file mode 100644 index 000000000000..51e1d0c5dcd2 --- /dev/null +++ b/kde-apps/konsole/files/konsole-20.04.1-crash-on-close.patch @@ -0,0 +1,57 @@ +From fdfae25665731882687da8721e58c3c56a3babf8 Mon Sep 17 00:00:00 2001 +From: Nicolas Fella +Date: Thu, 28 May 2020 09:28:06 -0400 +Subject: Fix crash when closing session in KonsolePart via menu + +This close method is also used when closing a Konsole session +via the X on the tabbar and tabheader. + +FIXED-IN: 20.08.0 +BUG: 420817 +BUG: 420695 +BUG: 415762 + +See merge request !87 +--- + src/SessionController.cpp | 23 +++++++++++++++-------- + 1 file changed, 15 insertions(+), 8 deletions(-) + +diff --git a/src/SessionController.cpp b/src/SessionController.cpp +index 006ba8b..e72f342 100644 +--- a/src/SessionController.cpp ++++ b/src/SessionController.cpp +@@ -999,16 +999,23 @@ void SessionController::closeSession() + return; + } + +- if (confirmClose()) { +- if (_session->closeInNormalWay()) { ++ if (!confirmClose()) { ++ return; ++ } ++ ++ if (!_session->closeInNormalWay()) { ++ if (!confirmForceClose()) { + return; +- } else if (confirmForceClose()) { +- if (_session->closeInForceWay()) { +- return; +- } else { +- qCDebug(KonsoleDebug) << "Konsole failed to close a session in any way."; +- } + } ++ ++ if (!_session->closeInForceWay()) { ++ qCDebug(KonsoleDebug) << "Konsole failed to close a session in any way."; ++ return; ++ } ++ } ++ ++ if (factory()) { ++ factory()->removeClient(this); + } + } + +-- +cgit v1.1 + diff --git a/kde-apps/konsole/files/konsole-20.04.1-qt-5.15-set-text-encoding-crash.patch b/kde-apps/konsole/files/konsole-20.04.1-qt-5.15-set-text-encoding-crash.patch new file mode 100644 index 000000000000..78e5559d047a --- /dev/null +++ b/kde-apps/konsole/files/konsole-20.04.1-qt-5.15-set-text-encoding-crash.patch @@ -0,0 +1,109 @@ +From 72e76de072aa4c7960396856e72681a00c4f67d9 Mon Sep 17 00:00:00 2001 +From: Ahmad Samir +Date: Thu, 28 May 2020 21:40:29 +0200 +Subject: [PATCH] [SessionController] Fix crash caused by text encoding menu + +QMenu since 5.15 is hidden when an action is triggered, this caused a +crash in Konsole when trying to access the text encoding menu. + +Now Session emits a signal when the text encoding is changed, the +SessionController can connect to that singal to set the current codec in +the KCodecAction object. + +Also fix the EditProfileDialog so that when the KCodecAction menu is +shown the currently set codec is selected. + +BUG: 419526 + +FIXED-IN: 20.08 +--- + src/EditProfileDialog.cpp | 1 + + src/Session.cpp | 2 ++ + src/Session.h | 5 +++++ + src/SessionController.cpp | 7 ++++--- + src/SessionController.h | 2 +- + 5 files changed, 13 insertions(+), 4 deletions(-) + +diff --git a/src/EditProfileDialog.cpp b/src/EditProfileDialog.cpp +index a64136934..f93e9e166 100644 +--- a/src/EditProfileDialog.cpp ++++ b/src/EditProfileDialog.cpp +@@ -1725,6 +1725,7 @@ void EditProfileDialog::setupAdvancedPage(const Profile::Ptr &profile) + + // encoding options + auto codecAction = new KCodecAction(this); ++ codecAction->setCurrentCodec(profile->defaultEncoding()); + _advancedUi->selectEncodingButton->setMenu(codecAction->menu()); + connect(codecAction, + QOverload::of(&KCodecAction::triggered), this, +diff --git a/src/Session.cpp b/src/Session.cpp +index 1103f6e1b..483d8fd6a 100644 +--- a/src/Session.cpp ++++ b/src/Session.cpp +@@ -252,6 +252,8 @@ void Session::setCodec(QTextCodec* codec) + } + + emulation()->setCodec(codec); ++ ++ emit sessionCodecChanged(codec); + } + + bool Session::setCodec(const QByteArray& name) +diff --git a/src/Session.h b/src/Session.h +index 1b7da1b3b..c1af3c05d 100644 +--- a/src/Session.h ++++ b/src/Session.h +@@ -661,6 +661,11 @@ Q_SIGNALS: + */ + void currentDirectoryChanged(const QString &dir); + ++ /** ++ * Emitted when the session text encoding changes. ++ */ ++ void sessionCodecChanged(QTextCodec *codec); ++ + /** Emitted when a bell event occurs in the session. */ + void bellRequest(const QString &message); + +diff --git a/src/SessionController.cpp b/src/SessionController.cpp +index e72f342c4..f74969f85 100644 +--- a/src/SessionController.cpp ++++ b/src/SessionController.cpp +@@ -691,7 +691,8 @@ void SessionController::setupCommonActions() + _codecAction = new KCodecAction(i18n("Set &Encoding"), this); + _codecAction->setIcon(QIcon::fromTheme(QStringLiteral("character-set"))); + collection->addAction(QStringLiteral("set-encoding"), _codecAction); +- connect(_codecAction->menu(), &QMenu::aboutToShow, this, &Konsole::SessionController::updateCodecAction); ++ _codecAction->setCurrentCodec(QString::fromUtf8(_session->codec())); ++ connect(_session.data(), &Konsole::Session::sessionCodecChanged, this, &Konsole::SessionController::updateCodecAction); + connect(_codecAction, + QOverload::of(&KCodecAction::triggered), this, + &Konsole::SessionController::changeCodec); +@@ -846,9 +847,9 @@ void SessionController::prepareSwitchProfileMenu() + _switchProfileMenu->menu()->clear(); + _switchProfileMenu->menu()->addActions(_profileList->actions()); + } +-void SessionController::updateCodecAction() ++void SessionController::updateCodecAction(QTextCodec *codec) + { +- _codecAction->setCurrentCodec(QString::fromUtf8(_session->codec())); ++ _codecAction->setCurrentCodec(codec); + } + + void SessionController::changeCodec(QTextCodec* codec) +diff --git a/src/SessionController.h b/src/SessionController.h +index 057a31446..5062833b7 100644 +--- a/src/SessionController.h ++++ b/src/SessionController.h +@@ -260,7 +260,7 @@ private Q_SLOTS: + // other + void setupSearchBar(); + void prepareSwitchProfileMenu(); +- void updateCodecAction(); ++ void updateCodecAction(QTextCodec *codec); + void showDisplayContextMenu(const QPoint &position); + void movementKeyFromSearchBarReceived(QKeyEvent *event); + void sessionNotificationsChanged(Session::Notification notification, bool enabled); +-- +2.26.2 + diff --git a/kde-apps/konsole/files/konsole-20.04.1-segfault-on-close.patch b/kde-apps/konsole/files/konsole-20.04.1-segfault-on-close.patch new file mode 100644 index 000000000000..55213878ad27 --- /dev/null +++ b/kde-apps/konsole/files/konsole-20.04.1-segfault-on-close.patch @@ -0,0 +1,44 @@ +From 5e5129d51fa85036832f1af44ec5b875d426392f Mon Sep 17 00:00:00 2001 +From: Maximilian Schiller +Date: Thu, 28 May 2020 22:57:29 +0200 +Subject: [PATCH] Fix konsolepart Segfault when closed + +Assign the _view as the parent to the KXMLGuiFactory because the factory +is referencing the view widget as its associated widget. Since the +TerminalDisplay gets destructed first this is now a dangling pointer. +If the view is set as the parent the factory gets cleaned up correctly. + +Also cleanup the created clientBuilder after destruction because it +cant have a parent and would probably leak memory. + +BUG: 415762 +BUG: 421226 +BUG: 421194 +BUG: 421138 +--- + src/SessionController.cpp | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/src/SessionController.cpp b/src/SessionController.cpp +index e72f342c4..99e185f5e 100644 +--- a/src/SessionController.cpp ++++ b/src/SessionController.cpp +@@ -1732,11 +1732,13 @@ void SessionController::showDisplayContextMenu(const QPoint& position) + if (factory() == nullptr) { + if (clientBuilder() == nullptr) { + setClientBuilder(new KXMLGUIBuilder(_view)); ++ ++ // Client builder does not get delted automatically ++ connect(this, &QObject::destroyed, this, [this]{ delete clientBuilder(); }); + } + +- auto factory = new KXMLGUIFactory(clientBuilder(), this); ++ auto factory = new KXMLGUIFactory(clientBuilder(), _view); + factory->addClient(this); +- ////qDebug() << "Created xmlgui factory" << factory; + } + + QPointer popup = qobject_cast(factory()->container(QStringLiteral("session-popup-menu"), this)); +-- +2.26.2 + diff --git a/kde-apps/konsole/konsole-20.04.0.ebuild b/kde-apps/konsole/konsole-20.04.0.ebuild deleted file mode 100644 index e5d41bd62578..000000000000 --- a/kde-apps/konsole/konsole-20.04.0.ebuild +++ /dev/null @@ -1,62 +0,0 @@ -# Copyright 1999-2020 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -ECM_HANDBOOK="optional" -ECM_TEST="true" -KFMIN=5.69.0 -QTMIN=5.12.3 -VIRTUALX_REQUIRED="test" -inherit ecm kde.org - -DESCRIPTION="KDE's terminal emulator" -HOMEPAGE="https://kde.org/applications/system/org.kde.konsole -https://konsole.kde.org" - -LICENSE="GPL-2" # TODO: CHECK -SLOT="5" -KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" -IUSE="X" - -DEPEND=" - >=dev-qt/qtdbus-${QTMIN}:5 - >=dev-qt/qtgui-${QTMIN}:5 - >=dev-qt/qtnetwork-${QTMIN}:5 - >=dev-qt/qtprintsupport-${QTMIN}:5 - >=dev-qt/qtwidgets-${QTMIN}:5 - >=dev-qt/qtxml-${QTMIN}:5 - >=kde-frameworks/kbookmarks-${KFMIN}:5 - >=kde-frameworks/kcompletion-${KFMIN}:5 - >=kde-frameworks/kconfig-${KFMIN}:5 - >=kde-frameworks/kconfigwidgets-${KFMIN}:5 - >=kde-frameworks/kcoreaddons-${KFMIN}:5 - >=kde-frameworks/kcrash-${KFMIN}:5 - >=kde-frameworks/kdbusaddons-${KFMIN}:5 - >=kde-frameworks/kguiaddons-${KFMIN}:5 - >=kde-frameworks/kjobwidgets-${KFMIN}:5 - >=kde-frameworks/ki18n-${KFMIN}:5 - >=kde-frameworks/kinit-${KFMIN}:5 - >=kde-frameworks/kiconthemes-${KFMIN}:5 - >=kde-frameworks/kio-${KFMIN}:5 - >=kde-frameworks/knewstuff-${KFMIN}:5 - >=kde-frameworks/knotifications-${KFMIN}:5 - >=kde-frameworks/knotifyconfig-${KFMIN}:5 - >=kde-frameworks/kparts-${KFMIN}:5 - >=kde-frameworks/kpty-${KFMIN}:5 - >=kde-frameworks/kservice-${KFMIN}:5 - >=kde-frameworks/ktextwidgets-${KFMIN}:5 - >=kde-frameworks/kwidgetsaddons-${KFMIN}:5 - >=kde-frameworks/kwindowsystem-${KFMIN}:5 - >=kde-frameworks/kxmlgui-${KFMIN}:5 - X? ( x11-libs/libX11 ) -" -RDEPEND="${DEPEND}" - -src_configure() { - local mycmakeargs=( - $(cmake_use_find_package X X11) - ) - - ecm_src_configure -} diff --git a/kde-apps/konsole/konsole-20.04.1-r2.ebuild b/kde-apps/konsole/konsole-20.04.1-r2.ebuild new file mode 100644 index 000000000000..95fd7ffcee35 --- /dev/null +++ b/kde-apps/konsole/konsole-20.04.1-r2.ebuild @@ -0,0 +1,68 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +ECM_HANDBOOK="optional" +ECM_TEST="true" +KFMIN=5.70.0 +QTMIN=5.12.3 +VIRTUALX_REQUIRED="test" +inherit ecm kde.org + +DESCRIPTION="KDE's terminal emulator" +HOMEPAGE="https://kde.org/applications/system/org.kde.konsole +https://konsole.kde.org" + +LICENSE="GPL-2" # TODO: CHECK +SLOT="5" +KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86" +IUSE="X" + +DEPEND=" + >=dev-qt/qtdbus-${QTMIN}:5 + >=dev-qt/qtgui-${QTMIN}:5 + >=dev-qt/qtnetwork-${QTMIN}:5 + >=dev-qt/qtprintsupport-${QTMIN}:5 + >=dev-qt/qtwidgets-${QTMIN}:5 + >=dev-qt/qtxml-${QTMIN}:5 + >=kde-frameworks/kbookmarks-${KFMIN}:5 + >=kde-frameworks/kcompletion-${KFMIN}:5 + >=kde-frameworks/kconfig-${KFMIN}:5 + >=kde-frameworks/kconfigwidgets-${KFMIN}:5 + >=kde-frameworks/kcoreaddons-${KFMIN}:5 + >=kde-frameworks/kcrash-${KFMIN}:5 + >=kde-frameworks/kdbusaddons-${KFMIN}:5 + >=kde-frameworks/kguiaddons-${KFMIN}:5 + >=kde-frameworks/kjobwidgets-${KFMIN}:5 + >=kde-frameworks/ki18n-${KFMIN}:5 + >=kde-frameworks/kinit-${KFMIN}:5 + >=kde-frameworks/kiconthemes-${KFMIN}:5 + >=kde-frameworks/kio-${KFMIN}:5 + >=kde-frameworks/knewstuff-${KFMIN}:5 + >=kde-frameworks/knotifications-${KFMIN}:5 + >=kde-frameworks/knotifyconfig-${KFMIN}:5 + >=kde-frameworks/kparts-${KFMIN}:5 + >=kde-frameworks/kpty-${KFMIN}:5 + >=kde-frameworks/kservice-${KFMIN}:5 + >=kde-frameworks/ktextwidgets-${KFMIN}:5 + >=kde-frameworks/kwidgetsaddons-${KFMIN}:5 + >=kde-frameworks/kwindowsystem-${KFMIN}:5 + >=kde-frameworks/kxmlgui-${KFMIN}:5 + X? ( x11-libs/libX11 ) +" +RDEPEND="${DEPEND}" + +PATCHES=( + "${FILESDIR}/${P}-crash-on-close.patch" # bug 723214, in 20.04.2 + "${FILESDIR}/${P}-qt-5.15-set-text-encoding-crash.patch" # KDE-Bug 419526; pending + "${FILESDIR}/${P}-segfault-on-close.patch" # KDE-Bug 415762; pending +) + +src_configure() { + local mycmakeargs=( + $(cmake_use_find_package X X11) + ) + + ecm_src_configure +} -- cgit v1.2.3