From b38e359348f8e7362532e19eb3e602348f9b5554 Mon Sep 17 00:00:00 2001 From: Andreas Sturmlechner Date: Sat, 15 Dec 2018 23:03:38 +0100 Subject: kde-apps/akregator: Fix crash with Qt-5.11+ KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=371511 Package-Manager: Portage-2.3.52, Repoman-2.3.12 Signed-off-by: Andreas Sturmlechner --- kde-apps/akregator/akregator-18.12.0-r1.ebuild | 57 +++++++++++++++ .../files/akregator-18.12.0-qt-5.11-crashfix.patch | 81 ++++++++++++++++++++++ 2 files changed, 138 insertions(+) create mode 100644 kde-apps/akregator/akregator-18.12.0-r1.ebuild create mode 100644 kde-apps/akregator/files/akregator-18.12.0-qt-5.11-crashfix.patch diff --git a/kde-apps/akregator/akregator-18.12.0-r1.ebuild b/kde-apps/akregator/akregator-18.12.0-r1.ebuild new file mode 100644 index 000000000000..d1132436997b --- /dev/null +++ b/kde-apps/akregator/akregator-18.12.0-r1.ebuild @@ -0,0 +1,57 @@ +# Copyright 1999-2018 Gentoo Authors +# 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="" + +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_frameworks_dep syndication) + $(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_qt_dep qtdbus) + $(add_qt_dep qtgui) + $(add_qt_dep qtnetwork) + $(add_qt_dep qtwebengine) + $(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}-qt-5.11-crashfix.patch" ) diff --git a/kde-apps/akregator/files/akregator-18.12.0-qt-5.11-crashfix.patch b/kde-apps/akregator/files/akregator-18.12.0-qt-5.11-crashfix.patch new file mode 100644 index 000000000000..f13512117a90 --- /dev/null +++ b/kde-apps/akregator/files/akregator-18.12.0-qt-5.11-crashfix.patch @@ -0,0 +1,81 @@ +From 91a4ab57a82970bd75eee4a7aee61a7e1c1321ef Mon Sep 17 00:00:00 2001 +From: Andras Mantia +Date: Thu, 13 Dec 2018 17:32:52 +0200 +Subject: Don't crash with Qt 5.11+ + +Summary: +Based on the patch from https://bugs.kde.org/show_bug.cgi?id=371511 +See also https://bugreports.qt.io/browse/QTBUG-72260 + +BUG: 371511 + +Reviewers: PHID-PROJ-odxxyyfgujhgbu6ergrt, mlaurent + +Reviewed By: PHID-PROJ-odxxyyfgujhgbu6ergrt, mlaurent + +Subscribers: marten, asturmlechner, kfunk, kde-pim + +Tags: #kde_pim + +Differential Revision: https://phabricator.kde.org/D17563 +--- + .../webengine/articleviewerwebengine.cpp | 22 ++++++++++++++++++++++ + 1 file changed, 22 insertions(+) + +diff --git a/src/articleviewer-ng/webengine/articleviewerwebengine.cpp b/src/articleviewer-ng/webengine/articleviewerwebengine.cpp +index 2463fdf..174c09a 100644 +--- a/src/articleviewer-ng/webengine/articleviewerwebengine.cpp ++++ b/src/articleviewer-ng/webengine/articleviewerwebengine.cpp +@@ -46,6 +46,7 @@ + #include + #include + #include ++#include + + #include + #include +@@ -57,6 +58,19 @@ + + using namespace Akregator; + ++class AkregatorRequestInterceptor : public QWebEngineUrlRequestInterceptor ++{ ++ Q_OBJECT ++ ++public: ++ explicit AkregatorRequestInterceptor(QObject *parent = nullptr) : QWebEngineUrlRequestInterceptor(parent) { ++ } ++ ++ void interceptRequest(QWebEngineUrlRequestInfo &info) override { ++ Q_UNUSED(info); ++ } ++}; ++ + ArticleViewerWebEngine::ArticleViewerWebEngine(KActionCollection *ac, QWidget *parent) + : WebEngineViewer::WebEngineView(parent) + , mActionCollection(ac) +@@ -64,10 +78,16 @@ ArticleViewerWebEngine::ArticleViewerWebEngine(KActionCollection *ac, QWidget *p + , mViewerPluginToolManager(nullptr) + { + mNetworkAccessManager = new WebEngineViewer::InterceptorManager(this, ac, this); ++ + QWebEngineProfile *profile = QWebEngineProfile::defaultProfile(); + mPageEngine = new ArticleViewerWebEnginePage(profile, this); + profile->setPersistentCookiesPolicy(QWebEngineProfile::ForcePersistentCookies); + ++ // Needed to workaround crash in webengine, see https://bugreports.qt.io/browse/QTBUG-72260 ++ auto webEngineUrlInterceptor = new AkregatorRequestInterceptor(); ++ profile->setRequestInterceptor(webEngineUrlInterceptor); ++ connect(profile, &QObject::destroyed, webEngineUrlInterceptor, &AkregatorRequestInterceptor::deleteLater); ++ + setPage(mPageEngine); + + connect(this, &ArticleViewerWebEngine::showContextMenu, this, &ArticleViewerWebEngine::slotShowContextMenu); +@@ -494,3 +514,5 @@ void ArticleViewerWebEngine::slotActivatePlugin(MessageViewer::ViewerPluginInter + interface->setUrl(mCurrentUrl); + interface->execute(); + } ++ ++#include "articleviewerwebengine.moc" +-- +cgit v1.1 -- cgit v1.2.3-65-gdbad