From 1350233b6dc1924ba29a42462447995f26dae0dc Mon Sep 17 00:00:00 2001 From: root Date: Wed, 3 Oct 2012 01:32:13 -0700 Subject: Wed Oct 3 01:31:01 PDT 2012 --- testing/nepomuk-core/PKGBUILD | 16 +++++++++++----- testing/nepomuk-core/regression-crash.patch | 25 +++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 5 deletions(-) create mode 100644 testing/nepomuk-core/regression-crash.patch (limited to 'testing/nepomuk-core') diff --git a/testing/nepomuk-core/PKGBUILD b/testing/nepomuk-core/PKGBUILD index 657e60be6..bff55942b 100644 --- a/testing/nepomuk-core/PKGBUILD +++ b/testing/nepomuk-core/PKGBUILD @@ -1,8 +1,8 @@ -# $Id: PKGBUILD 166034 2012-09-04 15:37:30Z andrea $ +# $Id: PKGBUILD 167563 2012-10-02 18:56:33Z andrea $ # Maintainer: Andrea Scarpino pkgname=nepomuk-core -pkgver=4.9.1 +pkgver=4.9.2 pkgrel=1 pkgdesc="Contains the central Nepomuk services like file indexing, file system monitoring, query, storage, client libraries" url="https://projects.kde.org/projects/kde/kdelibs/nepomuk-core" @@ -10,11 +10,17 @@ arch=('i686' 'x86_64') license=('GPL' 'LGPL' 'FDL') depends=('kdelibs') makedepends=('cmake' 'automoc4' 'doxygen') -source=("http://download.kde.org/stable/${pkgver}/src/${pkgname}-${pkgver}.tar.xz") -sha1sums=('1dbb4467b7d4ec50133e5ce86c3837b57b95794d') +source=("http://download.kde.org/stable/${pkgver}/src/${pkgname}-${pkgver}.tar.xz" + 'regression-crash.patch') +sha1sums=('a04e632bfa39ac5158c2addf7278bfb27d29cb5b' + 'e6237844c0f9d5838b827068fe768394e0df0cff') build() { - cd "${srcdir}" + # KDEBUG 307388 + cd ${pkgname}-${pkgver} + patch -p1 -i "${srcdir}"/regression-crash.patch + cd ../ + mkdir build cd build cmake ../${pkgname}-${pkgver} \ diff --git a/testing/nepomuk-core/regression-crash.patch b/testing/nepomuk-core/regression-crash.patch new file mode 100644 index 000000000..a683c133b --- /dev/null +++ b/testing/nepomuk-core/regression-crash.patch @@ -0,0 +1,25 @@ +commit 804e54f83ade8a377d392d350981ead07f60a9d3 +Author: David Faure +Date: Tue Oct 2 20:27:03 2012 +0200 + + Fix crash when watchUserLimitReached() leads to deleting the KInotify instance + + ... which emitted the signal. So don't use a direct delete. + + BUG: 307388 + FIXED-IN: 4.9.3 + +diff --git a/services/filewatch/nepomukfilewatch.cpp b/services/filewatch/nepomukfilewatch.cpp +index 9fd5d9c..94db504 100644 +--- a/services/filewatch/nepomukfilewatch.cpp ++++ b/services/filewatch/nepomukfilewatch.cpp +@@ -323,7 +323,8 @@ void Nepomuk2::FileWatch::connectToKDirWatch() + void Nepomuk2::FileWatch::slotInotifyWatchUserLimitReached() + { + // we do it the brutal way for now hoping with new kernels and defaults this will never happen +- delete m_dirWatch; ++ // Delete the KInotify and switch to KDirNotify dbus signals ++ m_dirWatch->deleteLater(); + m_dirWatch = 0; + connectToKDirWatch(); + } -- cgit v1.2.3-54-g00ecf