Skip to content

Commit

Permalink
kde-frameworks/kcmutils: Check activeModule before using it
Browse files Browse the repository at this point in the history
KDE-Bug: https://bugs.kde.org/show_bug.cgi?id=417396
Reported-by: Theofilos Intzoglou <[email protected]>
Closes: https://bugs.gentoo.org/710078
Package-Manager: Portage-2.3.89, Repoman-2.3.20
Signed-off-by: Andreas Sturmlechner <[email protected]>
  • Loading branch information
a17r committed Feb 19, 2020
1 parent 4e7f9a4 commit cfcc5d1
Show file tree
Hide file tree
Showing 2 changed files with 66 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
From ea7120ed901bf6161bb483ab73211a6491daac8f Mon Sep 17 00:00:00 2001
From: Wolfgang Bauer <[email protected]>
Date: Sun, 16 Feb 2020 18:05:06 +0100
Subject: Check activeModule before using it

`activeModule` can be a nullptr here, as this is outside/after the
`if (activeModule)`.
This causes kontact to crash when opening its settings.

BUG: 417396
FIXED-IN: 5.68.0
Differential Revision: https://phabricator.kde.org/D27433
---
src/kcmultidialog.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/kcmultidialog.cpp b/src/kcmultidialog.cpp
index 90da1c0..6a36ba5 100644
--- a/src/kcmultidialog.cpp
+++ b/src/kcmultidialog.cpp
@@ -181,7 +181,7 @@ void KCMultiDialogPrivate::_k_clientChanged()
#endif
}

- auto buttons = activeModule->buttons();
+ auto buttons = activeModule ? activeModule->buttons() : KCModule::NoAdditionalButton;

QPushButton *resetButton = q->buttonBox()->button(QDialogButtonBox::Reset);
if (resetButton) {
--
cgit v1.1
35 changes: 35 additions & 0 deletions kde-frameworks/kcmutils/kcmutils-5.67.0-r1.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7

ECM_TEST="false"
PVCUT=$(ver_cut 1-2)
QTMIN=5.12.3
inherit ecm kde.org

DESCRIPTION="Framework to work with KDE System Settings modules"
LICENSE="LGPL-2"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
IUSE=""

DEPEND="
=kde-frameworks/kauth-${PVCUT}*:5
=kde-frameworks/kconfig-${PVCUT}*:5
=kde-frameworks/kconfigwidgets-${PVCUT}*:5
=kde-frameworks/kcoreaddons-${PVCUT}*:5
=kde-frameworks/kdeclarative-${PVCUT}*:5
=kde-frameworks/kguiaddons-${PVCUT}*:5
=kde-frameworks/ki18n-${PVCUT}*:5
=kde-frameworks/kitemviews-${PVCUT}*:5
=kde-frameworks/kservice-${PVCUT}*:5
=kde-frameworks/kwidgetsaddons-${PVCUT}*:5
=kde-frameworks/kxmlgui-${PVCUT}*:5
>=dev-qt/qtdbus-${QTMIN}:5
>=dev-qt/qtdeclarative-${QTMIN}:5[widgets]
>=dev-qt/qtgui-${QTMIN}:5
>=dev-qt/qtwidgets-${QTMIN}:5
"
RDEPEND="${DEPEND}"

PATCHES=( "${FILESDIR}/${P}-check-activeModule.patch" ) # bug 710078, in 5.68

0 comments on commit cfcc5d1

Please sign in to comment.