commit:     306013b2e3da22f8e58270e0cff7eaa11fb32b1d
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 13 17:57:49 2017 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Wed Sep 13 18:06:50 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=306013b2

kde-apps/akregator: Fix file corruption, crashes

Package-Manager: Portage-2.3.8, Repoman-2.3.3

 kde-apps/akregator/akregator-17.08.1-r1.ebuild     | 58 ++++++++++++++++++++++
 .../files/akregator-17.08.1-corruption.patch       | 44 ++++++++++++++++
 2 files changed, 102 insertions(+)

diff --git a/kde-apps/akregator/akregator-17.08.1-r1.ebuild 
b/kde-apps/akregator/akregator-17.08.1-r1.ebuild
new file mode 100644
index 00000000000..de2fc23e16c
--- /dev/null
+++ b/kde-apps/akregator/akregator-17.08.1-r1.ebuild
@@ -0,0 +1,58 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+KDE_HANDBOOK="forceoptional"
+KDE_TEST="forceoptional"
+inherit kde5
+
+DESCRIPTION="News feed aggregator"
+HOMEPAGE="https://www.kde.org/applications/internet/akregator";
+LICENSE="GPL-2+ handbook? ( FDL-1.2+ )"
+KEYWORDS="~amd64 ~x86"
+
+IUSE=""
+
+# drop qtwebengine subslot operator when QT_MINIMAL >= 5.8.0
+COMMON_DEPEND="
+       $(add_frameworks_dep kcmutils)
+       $(add_frameworks_dep kcodecs)
+       $(add_frameworks_dep kcompletion)
+       $(add_frameworks_dep kconfig)
+       $(add_frameworks_dep kconfigwidgets)
+       $(add_frameworks_dep kcoreaddons)
+       $(add_frameworks_dep kcrash)
+       $(add_frameworks_dep ki18n)
+       $(add_frameworks_dep kiconthemes)
+       $(add_frameworks_dep kio)
+       $(add_frameworks_dep kjobwidgets)
+       $(add_frameworks_dep knotifications)
+       $(add_frameworks_dep knotifyconfig)
+       $(add_frameworks_dep kparts)
+       $(add_frameworks_dep kservice)
+       $(add_frameworks_dep ktextwidgets)
+       $(add_frameworks_dep kwidgetsaddons)
+       $(add_frameworks_dep kxmlgui)
+       $(add_kdeapps_dep grantleetheme)
+       $(add_kdeapps_dep kontactinterface)
+       $(add_kdeapps_dep kpimtextedit)
+       $(add_kdeapps_dep libkdepim)
+       $(add_kdeapps_dep messagelib)
+       $(add_kdeapps_dep pimcommon)
+       $(add_kdeapps_dep syndication)
+       $(add_qt_dep qtdbus)
+       $(add_qt_dep qtgui)
+       $(add_qt_dep qtnetwork)
+       $(add_qt_dep qtwebengine '' '' '5=')
+       $(add_qt_dep qtwidgets)
+       $(add_qt_dep qtxml)
+"
+DEPEND="${COMMON_DEPEND}
+       dev-libs/grantlee:5
+"
+RDEPEND="${COMMON_DEPEND}
+       !kde-apps/kdepim-l10n
+"
+
+PATCHES=( "${FILESDIR}/${P}-corruption.patch" )

diff --git a/kde-apps/akregator/files/akregator-17.08.1-corruption.patch 
b/kde-apps/akregator/files/akregator-17.08.1-corruption.patch
new file mode 100644
index 00000000000..f2e9d75a3c3
--- /dev/null
+++ b/kde-apps/akregator/files/akregator-17.08.1-corruption.patch
@@ -0,0 +1,44 @@
+From d0a5f4159cddcca656ca8bbcbd6e551e3499c166 Mon Sep 17 00:00:00 2001
+From: Anthony Fieroni <[email protected]>
+Date: Sun, 10 Sep 2017 21:59:35 +0300
+Subject: [akregator] Make sure part is created before main windows is restored
+
+DIfferential Revision: https://phabricator.kde.org/D6739
+
+BUG: 381822
+BUG: 378513
+BUG: 381825
+BUG: 377129
+
+Signed-off-by: Anthony Fieroni <[email protected]>
+---
+ src/main.cpp | 13 +++++--------
+ 1 file changed, 5 insertions(+), 8 deletions(-)
+
+diff --git a/src/main.cpp b/src/main.cpp
+index b80b198..aa1bb08 100644
+--- a/src/main.cpp
++++ b/src/main.cpp
+@@ -113,14 +113,11 @@ int main(int argc, char **argv)
+ 
+     // see if we are starting with session management
+     if (app.isSessionRestored()) {
+-#undef RESTORE
+-#define RESTORE(type) { int n = 1; \
+-                        while (KMainWindow::canBeRestored(n)) { \
+-                            (new type)->restore(n, false); \
+-                            n++;} \
+-}
+-
+-        RESTORE(Akregator::MainWindow);
++        auto mainWindow = new Akregator::MainWindow();
++        mainWindow->loadPart();
++        if (KMainWindow::canBeRestored(1)) {
++            mainWindow->restore(1, false);
++        }
+     }
+ 
+     return app.exec();
+-- 
+cgit v0.11.2
+

Reply via email to