rpms/kdelibs/F-9 kdelibs-4.1.0-kde#167826.patch, NONE, 1.1 kdelibs.spec, 1.334, 1.335

Rex Dieter (rdieter) fedora-extras-commits at redhat.com
Fri Aug 1 13:04:34 UTC 2008


Author: rdieter

Update of /cvs/pkgs/rpms/kdelibs/F-9
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv29665

Modified Files:
	kdelibs.spec 
Added Files:
	kdelibs-4.1.0-kde#167826.patch 
Log Message:
konq processes never terminate (kde#167826, rh#457526)


kdelibs-4.1.0-kde#167826.patch:

--- NEW FILE kdelibs-4.1.0-kde#167826.patch ---
--- branches/KDE/4.1/kdelibs/kdecore/kernel/kglobal.cpp	2008/08/01 00:12:03	840376
+++ branches/KDE/4.1/kdelibs/kdecore/kernel/kglobal.cpp	2008/08/01 00:14:54	840377
@@ -251,11 +251,14 @@
 
 /**
  * This counter indicates when to quit the application.
- * It starts at 1, is decremented in KMainWindow when the last window is closed, but
- * is incremented by operations that should outlive the last window closed
- * (e.g. a file copy for a file manager, or 'compacting folders on exit' for a mail client).
+ * It starts at 0, is incremented by KMainWindow, systray icons, running jobs, etc.
+ * and decremented again when those things are destroyed.
+ * This mechanism allows dialogs and jobs to outlive the last window closed
+ * e.g. a file copy for a file manager, or 'compacting folders on exit' for a mail client,
+ * the job progress widget with "keep open" checked, etc.
  */
-static int s_refCount = 1;
+static int s_refCount = 0;
+static bool s_allowQuit = false;
 
 void KGlobal::ref()
 {
@@ -267,9 +270,14 @@
 {
     --s_refCount;
     //kDebug() << "KGlobal::deref() : refCount = " << s_refCount;
-    if (s_refCount <= 0) {
+    if (s_refCount <= 0 && s_allowQuit) {
         QCoreApplication::instance()->quit();
     }
 }
 
+void KGlobal::setAllowQuit(bool allowQuit)
+{
+    s_allowQuit = allowQuit;
+}
+
 #undef PRIVATE_DATA
--- branches/KDE/4.1/kdelibs/kdeui/widgets/kmainwindow.cpp	2008/08/01 00:12:03	840376
+++ branches/KDE/4.1/kdelibs/kdeui/widgets/kmainwindow.cpp	2008/08/01 00:14:54	840377
@@ -226,6 +226,11 @@
 {
     KGlobal::ref();
 
+    // We set allow quit to true, so when the refcounting reaches 0 the application instance will
+    // be exited. This has a similar purpose than setQuitOnLastWindowClosed (from
+    // QApplication), but it honors (de)refing from KGlobal.
+    KGlobal::setAllowQuit(true);
+
     q = _q;
 
     q->setAnimated(KGlobalSettings::graphicEffectsLevel() & KGlobalSettings::SimpleAnimationEffects);


Index: kdelibs.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kdelibs/F-9/kdelibs.spec,v
retrieving revision 1.334
retrieving revision 1.335
diff -u -r1.334 -r1.335
--- kdelibs.spec	1 Aug 2008 12:36:51 -0000	1.334
+++ kdelibs.spec	1 Aug 2008 13:04:04 -0000	1.335
@@ -81,7 +81,10 @@
 # (and its followup) (#455130)
 Patch19: kdelibs-4.0.98-revert-kinit-regression.patch
 
-# upstream patches
+## upstream patches
+# konq processes never terminate, 
+# http://bugs.kde.org/167825 , http://bugzilla.redhat.com/457526
+Patch100: kdelibs-4.1.0-kde#167826.patch
 
 BuildRequires: qt4-devel >= 4.4.0
 Requires: qt4 >= %{_qt4_version} 
@@ -206,7 +209,9 @@
 %patch18 -p1 -b .kstandarddirs
 %patch19 -p0 -b .kinit-regression
 
-# upstream patches
+## upstream patches
+%patch100 -p4 -b .kde#167826
+
 
 %build
 
@@ -369,6 +374,7 @@
 %changelog
 * Fri Aug 01 2008 Rex Dieter <rdieter at fedoraproject.org> 4.1.0-4
 - -devel: Requires: phonon-devel >= 4.2 (helps multilib upgrades)
+- konq processes never terminate (kde#167826, rh#457526)
 
 * Wed Jul 30 2008 Rex Dieter <rdieter at fedoraproject.org> 4.1.0-3
 - (Build)Requires: soprano(-devel) >= 2.1 (#456827)




More information about the fedora-extras-commits mailing list