konq processes never terminate (kde#167826, rh#457526)
This commit is contained in:
parent
92d98f58e2
commit
b959d4a014
51
kdelibs-4.1.0-kde#167826.patch
Normal file
51
kdelibs-4.1.0-kde#167826.patch
Normal file
@ -0,0 +1,51 @@
|
||||
--- 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);
|
10
kdelibs.spec
10
kdelibs.spec
@ -81,7 +81,10 @@ Patch18: kdelibs-4.0.99-kstandarddirs.patch
|
||||
# (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 @@ sed -i -e "s|@@VERSION_RELEASE@@|%{version}-%{release}|" kio/kio/kprotocolmanage
|
||||
%patch18 -p1 -b .kstandarddirs
|
||||
%patch19 -p0 -b .kinit-regression
|
||||
|
||||
# upstream patches
|
||||
## upstream patches
|
||||
%patch100 -p4 -b .kde#167826
|
||||
|
||||
|
||||
%build
|
||||
|
||||
@ -369,6 +374,7 @@ rm -rf %{buildroot}
|
||||
%changelog
|
||||
* Fri Aug 01 2008 Rex Dieter <rdieter@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@fedoraproject.org> 4.1.0-3
|
||||
- (Build)Requires: soprano(-devel) >= 2.1 (#456827)
|
||||
|
Loading…
Reference in New Issue
Block a user