[dconf] service: Don't hang during shutdown
- From: Marek Kašík <mkasik src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [dconf] service: Don't hang during shutdown
- Date: Fri, 4 Apr 2014 13:58:02 +0000 (UTC)
commit c5419557ec86b40d4d7300352e01ee83d445a902
Author: Marek Kasik <mkasik redhat com>
Date: Fri Apr 4 15:45:01 2014 +0200
service: Don't hang during shutdown
Remember whether a signal was signalled to dconf-service
so we don't call g_application_release() more than once.
https://bugzilla.gnome.org/show_bug.cgi?id=727549
service/dconf-service.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
---
diff --git a/service/dconf-service.c b/service/dconf-service.c
index 8302bed..9127472 100644
--- a/service/dconf-service.c
+++ b/service/dconf-service.c
@@ -39,6 +39,8 @@ typedef struct
DConfBlame *blame;
GHashTable *writers;
GArray *subtree_ids;
+
+ gboolean released;
} DConfService;
G_DEFINE_TYPE (DConfService, dconf_service, G_TYPE_APPLICATION)
@@ -48,7 +50,10 @@ dconf_service_signalled (gpointer user_data)
{
DConfService *service = user_data;
- g_application_release (G_APPLICATION (service));
+ if (!service->released)
+ g_application_release (G_APPLICATION (service));
+
+ service->released = TRUE;
return G_SOURCE_REMOVE;
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]