Date: Tuesday, October 2, 2012 @ 14:41:06
  Author: andrea
Revision: 167555

Fix regression

Added:
  nepomuk-core/trunk/regression-crash.patch
Modified:
  nepomuk-core/trunk/PKGBUILD

------------------------+
 PKGBUILD               |   12 +++++++++---
 regression-crash.patch |   25 +++++++++++++++++++++++++
 2 files changed, 34 insertions(+), 3 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2012-10-02 18:35:41 UTC (rev 167554)
+++ PKGBUILD    2012-10-02 18:41:06 UTC (rev 167555)
@@ -10,11 +10,17 @@
 license=('GPL' 'LGPL' 'FDL')
 depends=('kdelibs')
 makedepends=('cmake' 'automoc4' 'doxygen')
-source=("http://download.kde.org/stable/${pkgver}/src/${pkgname}-${pkgver}.tar.xz";)
-sha1sums=('a04e632bfa39ac5158c2addf7278bfb27d29cb5b')
+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} \

Added: regression-crash.patch
===================================================================
--- regression-crash.patch                              (rev 0)
+++ regression-crash.patch      2012-10-02 18:41:06 UTC (rev 167555)
@@ -0,0 +1,25 @@
+commit 804e54f83ade8a377d392d350981ead07f60a9d3
+Author: David Faure <[email protected]>
+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();
+ }

Reply via email to