From 20cb32a509fe7f99e5ca3609794df4e38900e95f Mon Sep 17 00:00:00 2001 From: Matthias Clasen Date: Mon, 18 Sep 2006 16:36:20 +0000 Subject: [PATCH] fix a lifecycle issue --- GConf2-2.14.0-timeout.patch | 32 ++++++++++++++++++++++++++++++++ GConf2.spec | 8 +++++++- 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 GConf2-2.14.0-timeout.patch diff --git a/GConf2-2.14.0-timeout.patch b/GConf2-2.14.0-timeout.patch new file mode 100644 index 0000000..bdd9e93 --- /dev/null +++ b/GConf2-2.14.0-timeout.patch @@ -0,0 +1,32 @@ +--- GConf-2.14.0/gconf/gconfd.c.timeout 2006-09-18 12:19:24.000000000 -0400 ++++ GConf-2.14.0/gconf/gconfd.c 2006-09-18 12:21:30.000000000 -0400 +@@ -1151,18 +1151,20 @@ + static gboolean + no_databases_in_use (void) + { +- /* Only the default database still open, and +- * it has no listeners +- */ ++ GList *l; + +- if (db_list == NULL) +- return TRUE; ++ for (l = db_list; l; l = l->next) ++ { ++ GConfDatabase *db = l->data; + +- if (db_list->next == NULL && +- db_list->data == default_db) +- return gconf_listeners_count (default_db->listeners) == 0; ++ if (gconf_listeners_count (db->listeners) > 0) ++ return FALSE; + +- return FALSE; ++ if (db->sync_timeout || db->sync_idle) ++ return FALSE; ++ } ++ ++ return TRUE; + } + + void diff --git a/GConf2.spec b/GConf2.spec index ede8eff..83a2ced 100644 --- a/GConf2.spec +++ b/GConf2.spec @@ -5,7 +5,7 @@ Summary: A process-transparent configuration system Name: GConf2 Version: 2.14.0 -Release: 2.1 +Release: 3%{?dist} License: LGPL Group: System Environment/Base Source: ftp://ftp.gnome.org/pub/GNOME/unstable/sources/GConf/GConf-%{version}.tar.bz2 @@ -24,6 +24,8 @@ BuildRequires: gettext BuildRequires: openldap-devel Patch0: GConf2-2.8.1-reload.patch +# http://bugzilla.gnome.org/show_bug.cgi?id=356573 +Patch1: GConf2-2.14.0-timeout.patch %description GConf is a process-transparent configuration database API used to @@ -46,6 +48,7 @@ development using GConf. %prep %setup -q -n GConf-%{version} %patch0 -p1 -b .reload +%patch1 -p1 -b .timeout %build %configure @@ -101,6 +104,9 @@ rm -rf $RPM_BUILD_ROOT %{_libdir}/pkgconfig/* %changelog +* Mon Sep 18 2006 Matthias Clasen - 2.14.0-3 +- Make sure that gconfd dies shortly after the session ends + * Wed Jul 12 2006 Jesse Keating - 2.14.0-2.1 - rebuild