[GConf2/f17] More crasher workarounds
Ray Strode
rstrode at fedoraproject.org
Mon Sep 24 14:05:44 UTC 2012
commit 700cc30238c5be4bd9bf5c886b89da0ae76c5d00
Author: Ray Strode <rstrode at redhat.com>
Date: Mon Sep 24 10:05:09 2012 -0400
More crasher workarounds
Resolves: #858348
GConf2.spec | 6 +++++-
workaround-crash.patch | 33 ++++++++++++++-------------------
2 files changed, 19 insertions(+), 20 deletions(-)
---
diff --git a/GConf2.spec b/GConf2.spec
index 508a7c0..1f44b22 100644
--- a/GConf2.spec
+++ b/GConf2.spec
@@ -6,7 +6,7 @@
Summary: A process-transparent configuration system
Name: GConf2
Version: 3.2.5
-Release: 2%{?dist}
+Release: 3%{?dist}
License: LGPLv2+
Group: System Environment/Base
#VCS: git:git://git.gnome.org/gconf
@@ -161,6 +161,10 @@ fi
%doc %{_mandir}/man1/gsettings-schema-convert.1*
%changelog
+* Mon Sep 24 2012 Ray Strode <rstrode at redhat.com> 3.2.5-3
+- More crasher workarounds
+ Resolves: #858348
+
* Thu Sep 13 2012 Ray Strode <rstrode at redhat.com> 3.2.5-2
- Work around crasher bug
Resolves: #755992
diff --git a/workaround-crash.patch b/workaround-crash.patch
index 2d1c6ba..f57f2fc 100644
--- a/workaround-crash.patch
+++ b/workaround-crash.patch
@@ -1,18 +1,6 @@
-From d9e9fe3d550693c530658583b73212ce94bf3f21 Mon Sep 17 00:00:00 2001
-From: Ray Strode <rstrode at redhat.com>
-Date: Thu, 13 Sep 2012 18:18:48 -0400
-Subject: [PATCH] daemon: don't exit on timeout
-
-The client library isn't robust enough to handle the daemon going away,
-so don't make it go away automatically.
----
- gconf/gconfd.c | 68 ----------------------------------------------------------
- 1 file changed, 68 deletions(-)
-
-diff --git a/gconf/gconfd.c b/gconf/gconfd.c
-index d42ce1e..557e906 100644
---- a/gconf/gconfd.c
-+++ b/gconf/gconfd.c
+diff -up GConf-3.2.5/gconf/gconfd.c.workaround-crash GConf-3.2.5/gconf/gconfd.c
+--- GConf-3.2.5/gconf/gconfd.c.workaround-crash 2012-03-07 13:08:55.000000000 -0500
++++ GConf-3.2.5/gconf/gconfd.c 2012-09-24 10:04:22.604652720 -0400
@@ -1053,63 +1053,6 @@ static GSList* main_loops = NULL;
static guint timeout_id = 0;
static gboolean need_log_cleanup = FALSE;
@@ -77,7 +65,7 @@ index d42ce1e..557e906 100644
void
gconfd_need_log_cleanup (void)
{
-@@ -1123,17 +1066,6 @@ gconf_main(void)
+@@ -1123,26 +1066,14 @@ gconf_main(void)
loop = g_main_loop_new (NULL, TRUE);
@@ -95,6 +83,13 @@ index d42ce1e..557e906 100644
main_loops = g_slist_prepend(main_loops, loop);
g_main_loop_run (loop);
---
-1.7.12
-
+
+ main_loops = g_slist_remove(main_loops, loop);
+
+- if (main_loops == NULL)
++ if (main_loops == NULL && timeout_id != 0)
+ {
+- g_assert(timeout_id != 0);
+ g_source_remove(timeout_id);
+ timeout_id = 0;
+ }
More information about the scm-commits
mailing list