summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'media-gfx/kphotoalbum')
-rw-r--r--media-gfx/kphotoalbum/files/kphotoalbum-5.6-crashfix.patch41
-rw-r--r--media-gfx/kphotoalbum/kphotoalbum-5.6-r1.ebuild69
2 files changed, 110 insertions, 0 deletions
diff --git a/media-gfx/kphotoalbum/files/kphotoalbum-5.6-crashfix.patch b/media-gfx/kphotoalbum/files/kphotoalbum-5.6-crashfix.patch
new file mode 100644
index 000000000000..96b752bf075a
--- /dev/null
+++ b/media-gfx/kphotoalbum/files/kphotoalbum-5.6-crashfix.patch
@@ -0,0 +1,41 @@
+From 583e10e8356d2ed64f0358ebf107bff35a98db31 Mon Sep 17 00:00:00 2001
+From: Johannes Zarl-Zierl <johannes@zarl-zierl.at>
+Date: Sun, 9 Feb 2020 22:51:15 +0100
+Subject: Fix crash when associating a tag with an area.
+
+If a tag is being associated with an area, the context menu has two
+levels: the direct "associate with <last added tag>" and the sub-menu
+"associate with..." followed by a list of tags.
+
+Each version uses a different function signature for
+ResizableFrame::associateTags. When refactoring connections to the "new"
+signal-slot syntax in commit c38f5136 (thus released in version 5.6), I
+applied the wrong signature to the connect statement.
+
+This resulted in a crash/failed assertion when selecting a tag in the
+described way.
+---
+ AnnotationDialog/ResizableFrame.cpp | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/AnnotationDialog/ResizableFrame.cpp b/AnnotationDialog/ResizableFrame.cpp
+index f2dba86..44175fb 100644
+--- a/AnnotationDialog/ResizableFrame.cpp
++++ b/AnnotationDialog/ResizableFrame.cpp
+@@ -1,4 +1,4 @@
+-/* Copyright (C) 2014-2019 The KPhotoAlbum Development Team
++/* Copyright (C) 2014-2020 The KPhotoAlbum Development Team
+
+ This program is free software; you can redistribute it and/or
+ modify it under the terms of the GNU General Public
+@@ -522,7 +522,7 @@ void AnnotationDialog::ResizableFrame::addTagActions(QMenu *menu)
+ submenu->addAction(createAssociateTagAction(tag));
+ }
+
+- connect(submenu, &QMenu::triggered, this, QOverload<>::of(&ResizableFrame::associateTag));
++ connect(submenu, &QMenu::triggered, this, QOverload<QAction *>::of(&ResizableFrame::associateTag));
+ }
+ }
+ }
+--
+cgit v1.1
diff --git a/media-gfx/kphotoalbum/kphotoalbum-5.6-r1.ebuild b/media-gfx/kphotoalbum/kphotoalbum-5.6-r1.ebuild
new file mode 100644
index 000000000000..5c27d00b9ab8
--- /dev/null
+++ b/media-gfx/kphotoalbum/kphotoalbum-5.6-r1.ebuild
@@ -0,0 +1,69 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+ECM_HANDBOOK="forceoptional"
+KFMIN=5.60.0
+QTMIN=5.12.3
+inherit ecm kde.org
+
+DESCRIPTION="Tool for indexing, searching, and viewing images"
+HOMEPAGE="https://www.kphotoalbum.org/"
+
+if [[ ${KDE_BUILD_TYPE} != live ]]; then
+ SRC_URI="mirror://kde/stable/${PN}/${PV}/${P}.tar.xz"
+ KEYWORDS="~amd64 ~x86"
+fi
+
+LICENSE="GPL-2+ FDL-1.2"
+SLOT="5"
+IUSE="+kipi map +raw share"
+
+DEPEND="
+ >=dev-qt/qtdbus-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtnetwork-${QTMIN}:5
+ >=dev-qt/qtsql-${QTMIN}:5[sqlite]
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=dev-qt/qtxml-${QTMIN}:5
+ >=kde-frameworks/karchive-${KFMIN}:5
+ >=kde-frameworks/kcompletion-${KFMIN}:5
+ >=kde-frameworks/kconfig-${KFMIN}:5
+ >=kde-frameworks/kconfigwidgets-${KFMIN}:5
+ >=kde-frameworks/kcoreaddons-${KFMIN}:5
+ >=kde-frameworks/ki18n-${KFMIN}:5
+ >=kde-frameworks/kiconthemes-${KFMIN}:5
+ >=kde-frameworks/kio-${KFMIN}:5
+ >=kde-frameworks/kjobwidgets-${KFMIN}:5
+ >=kde-frameworks/kservice-${KFMIN}:5
+ >=kde-frameworks/ktextwidgets-${KFMIN}:5
+ >=kde-frameworks/kwidgetsaddons-${KFMIN}:5
+ >=kde-frameworks/kxmlgui-${KFMIN}:5
+ media-gfx/exiv2:=
+ media-libs/phonon[qt5(+)]
+ virtual/jpeg:0
+ kipi? ( kde-apps/libkipi:5= )
+ map? ( kde-apps/libkgeomap:5 )
+ raw? ( kde-apps/libkdcraw:5 )
+ share? ( >=kde-frameworks/kxmlgui-${KFMIN}:5 )
+"
+RDEPEND="${DEPEND}
+ media-video/ffmpeg
+ kipi? ( kde-apps/kipi-plugins:5 )
+"
+
+DOCS=( ChangeLog README.md )
+
+PATCHES=( "${FILESDIR}/${P}-crashfix.patch" )
+
+src_configure() {
+ local mycmakeargs=(
+ $(cmake_use_find_package kipi KF5Kipi)
+ $(cmake_use_find_package map KF5KGeoMap)
+ $(cmake_use_find_package raw KF5KDcraw)
+ $(cmake_use_find_package share KF5Purpose)
+ )
+
+ ecm_src_configure
+}