[kde-runtime/f17] backport nepomukserver does not quit on logout (kde#291519)

Rex Dieter rdieter at fedoraproject.org
Wed Aug 29 23:17:45 UTC 2012


commit 4751579b155055a6bf010eec10032b8dbb76faeb
Author: Rex Dieter <rdieter at fedoraproject.org>
Date:   Wed Aug 29 18:21:32 2012 -0500

    backport nepomukserver does not quit on logout (kde#291519)

 ..._raa6c8e72bb215e22cb5d9218b9d11c1bcc274e30.diff |   49 ++++++++++++++++++++
 kde-runtime.spec                                   |   12 ++++-
 2 files changed, 60 insertions(+), 1 deletions(-)
---
diff --git a/changeset_raa6c8e72bb215e22cb5d9218b9d11c1bcc274e30.diff b/changeset_raa6c8e72bb215e22cb5d9218b9d11c1bcc274e30.diff
new file mode 100644
index 0000000..fe5e7fe
--- /dev/null
+++ b/changeset_raa6c8e72bb215e22cb5d9218b9d11c1bcc274e30.diff
@@ -0,0 +1,49 @@
+commit aa6c8e72bb215e22cb5d9218b9d11c1bcc274e30
+Author: Vishesh Handa <me at vhanda.in>
+Date:   Fri Jul 27 19:18:24 2012 +0530
+
+    Quit the nepomukserver if it is no longer required
+    
+    If nepomuk is not enabled the nepomukserver should not exist. It should
+    exit.
+    
+    BUG: 291519
+    FIXED-IN: 4.9.1
+
+diff --git a/server/nepomukserver.cpp b/server/nepomukserver.cpp
+index 6feb191..25632b5 100644
+--- a/server/nepomukserver.cpp
++++ b/server/nepomukserver.cpp
+@@ -60,6 +60,11 @@ Nepomuk2::Server::Server( QObject* parent )
+ 
+     // initialize according to config
+     init();
++
++    // Quit the server if Nepomuk is not running
++    if( m_currentState == StateDisabled ) {
++        quit();
++    }
+ }
+ 
+ 
+@@ -100,6 +105,9 @@ void Nepomuk2::Server::enableNepomuk( bool enabled )
+ 
+             // unregister the service manager interface
+             QDBusConnection::sessionBus().unregisterObject( "/servicemanager" );
++
++            // Quit if no longer required
++            quit();
+         }
+     }
+ }
+@@ -154,7 +162,9 @@ void Nepomuk2::Server::quit()
+         enableNepomuk(false);
+     }
+     else {
+-        QCoreApplication::instance()->quit();
++        // We use a QTimer because the event loop might not be running when
++        // this is called, in that case 'quit' will do nothing
++        QTimer::singleShot( 0, QCoreApplication::instance(), SLOT(quit()) );
+     }
+ }
+ 
diff --git a/kde-runtime.spec b/kde-runtime.spec
index 5c09c81..4b88a76 100644
--- a/kde-runtime.spec
+++ b/kde-runtime.spec
@@ -6,7 +6,7 @@
 Name:    kde-runtime
 Summary: KDE Runtime
 Version: 4.8.5
-Release: 2%{?dist}
+Release: 3%{?dist}
 
 # http://techbase.kde.org/Policies/Licensing_Policy
 License: LGPLv2+ and GPLv2+
@@ -44,6 +44,10 @@ Patch50: kde-runtime-4.7.90-nepomuk_onlyshowin_kde.patch
 # backport nepomuk memleak fixes
 # http://bugs.kde.org/304476
 Patch100: kde-runtime-4.8.5-nepomuk_memleak.patch
+# nepomuk doesn't quit on logout (http://bugs.kde.org/291519)
+# https://projects.kde.org/projects/kde/kdelibs/nepomuk-core/repository/revisions/aa6c8e72bb215e22cb5d9218b9d11c1bcc274e30
+Patch101: changeset_raa6c8e72bb215e22cb5d9218b9d11c1bcc274e30.diff
+
 
 # rhel patches
 Patch300: kde-runtime-4.8.3-webkit.patch
@@ -152,6 +156,9 @@ BuildArch: noarch
 %patch9 -p1 -b .man-overrides
 %patch50 -p1 -b .nepomuk_onlyshowin_kde
 %patch100 -p1 -b .nepomuk_memleak
+pushd nepomuk
+%patch101 -p1 -b .nepomuk_quit
+popd
 
 %if 0%{?rhel}
 %patch300 -p1 -b .webkit
@@ -333,6 +340,9 @@ fi
 
 
 %changelog
+* Wed Aug 29 2012 Rex Dieter <rdieter at fedoraproject.org> 4.8.5-3
+- backport nepomukserver does not quit on logout (kde#291519)
+
 * Tue Aug 14 2012 Rex Dieter <rdieter at fedoraproject.org> 4.8.5-2
 - backport nepomuk memleak fixes (kde#304476)
 


More information about the scm-commits mailing list