commit:     4bff875eca703cebcba799cca535f86a604c34fe
Author:     Andreas Sturmlechner <andreas.sturmlechner <AT> gmail <DOT> com>
AuthorDate: Tue Dec 15 18:44:24 2015 +0000
Commit:     Michael Palimaka <kensington <AT> gentoo <DOT> org>
CommitDate: Wed Dec 16 12:27:53 2015 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4bff875e

kde-apps/ark: Fix bug with kde-frameworks 5.17

A change in kxmlgui causes lingering ark processes in the background.

Package-Manager: portage-2.2.24

 kde-apps/ark/ark-15.08.3-r1.ebuild                 | 63 ++++++++++++++++++++++
 .../ark-15.08.3-fix-lingering-processes.patch      | 42 +++++++++++++++
 2 files changed, 105 insertions(+)

diff --git a/kde-apps/ark/ark-15.08.3-r1.ebuild 
b/kde-apps/ark/ark-15.08.3-r1.ebuild
new file mode 100644
index 0000000..358abb3
--- /dev/null
+++ b/kde-apps/ark/ark-15.08.3-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+KDE_HANDBOOK="forceoptional"
+KDE_TEST="forceoptional"
+inherit kde5
+
+DESCRIPTION="KDE Archiving tool"
+HOMEPAGE="https://www.kde.org/applications/utilities/ark
+https://utils.kde.org/projects/ark";
+KEYWORDS=" ~amd64 ~x86"
+IUSE="bzip2 lzma zlib"
+
+RDEPEND="
+       $(add_frameworks_dep karchive)
+       $(add_frameworks_dep kconfig)
+       $(add_frameworks_dep kcompletion)
+       $(add_frameworks_dep kconfigwidgets)
+       $(add_frameworks_dep kcoreaddons)
+       $(add_frameworks_dep kcrash)
+       $(add_frameworks_dep kdbusaddons)
+       $(add_frameworks_dep khtml)
+       $(add_frameworks_dep ki18n)
+       $(add_frameworks_dep kiconthemes)
+       $(add_frameworks_dep kio)
+       $(add_frameworks_dep kjobwidgets)
+       $(add_frameworks_dep kparts)
+       $(add_frameworks_dep kpty)
+       $(add_frameworks_dep kservice)
+       $(add_frameworks_dep kwidgetsaddons)
+       $(add_frameworks_dep kxmlgui)
+       >=app-arch/libarchive-3.0.0[bzip2?,lzma?,zlib?]
+       dev-qt/qtdbus:5
+       dev-qt/qtgui:5
+       dev-qt/qtwidgets:5
+"
+DEPEND="${RDEPEND}
+       sys-devel/gettext
+"
+
+PATCHES=( "${FILESDIR}/${PN}-15.08.3-fix-lingering-processes.patch" )
+
+src_configure() {
+       local mycmakeargs=(
+               $(cmake-utils_use_find_package bzip2 BZip2)
+               $(cmake-utils_use_find_package lzma LibLZMA)
+               $(cmake-utils_use_find_package test Qt5Test)
+               $(cmake-utils_use_find_package zlib ZLIB)
+       )
+
+       kde5_src_configure
+}
+
+pkg_postinst() {
+       kde5_pkg_postinst
+
+       if ! has_version app-arch/rar ; then
+               elog "For creating rar archives, install app-arch/rar"
+       fi
+}

diff --git a/kde-apps/ark/files/ark-15.08.3-fix-lingering-processes.patch 
b/kde-apps/ark/files/ark-15.08.3-fix-lingering-processes.patch
new file mode 100644
index 0000000..3d83c1b
--- /dev/null
+++ b/kde-apps/ark/files/ark-15.08.3-fix-lingering-processes.patch
@@ -0,0 +1,42 @@
+From: Weng Xuetian <wen...@gmail.com>
+Date: Tue, 15 Dec 2015 07:40:43 +0000
+Subject: Fix ark doesn't exit with kxmlgui 5.17.
+X-Git-Url: 
http://quickgit.kde.org/?p=ark.git&a=commitdiff&h=f7312a26d31cdc31776a09df600327ca86d3daea
+---
+Fix ark doesn't exit with kxmlgui 5.17.
+
+Previously setQuitOnLastWindowClosed is reset by KMainWindow::init but
+now it's removed in 5.17. Change to use setQuitOnLastWindowClosed in ark
+only when it's using a kjob and connect quit() to finished signal.
+
+REVIEW: 126358
+---
+
+
+--- a/app/main.cpp
++++ b/app/main.cpp
+@@ -119,7 +119,6 @@
+                         
QStringLiteral("http://littlesvr.ca/misc/contactandrew.php";));
+ 
+     application.setWindowIcon(QIcon::fromTheme(QStringLiteral("ark")));
+-    application.setQuitOnLastWindowClosed(false);
+ 
+     QCommandLineParser parser;
+     parser.setApplicationDescription(aboutData.shortDescription());
+@@ -196,6 +195,7 @@
+             parser.isSet(QStringLiteral("add-to"))) {
+ 
+             AddToArchive *addToArchiveJob = new AddToArchive(&application);
++            application.setQuitOnLastWindowClosed(false);
+             application.connect(addToArchiveJob, SIGNAL(result(KJob*)), 
SLOT(quit()), Qt::QueuedConnection);
+ 
+             if (parser.isSet(QStringLiteral("changetofirstpath"))) {
+@@ -233,6 +233,7 @@
+         } else if (parser.isSet(QStringLiteral("batch"))) {
+ 
+             BatchExtract *batchJob = new BatchExtract(&application);
++            application.setQuitOnLastWindowClosed(false);
+             application.connect(batchJob, SIGNAL(result(KJob*)), 
SLOT(quit()), Qt::QueuedConnection);
+ 
+             for (int i = 0; i < urls.count(); ++i) {
+

Reply via email to