4c06b9
From d970e6a07e82449c7d93b0314403af321230e081 Mon Sep 17 00:00:00 2001
4c06b9
From: Daniel Playfair Cal <daniel.playfair.cal@gmail.com>
4c06b9
Date: Wed, 25 Jul 2018 22:52:49 +1000
4c06b9
Subject: [PATCH 3/5] Engine: add g_debug statements in state changing
4c06b9
 interface functions
4c06b9
4c06b9
---
4c06b9
 engine/dconf-engine.c            | 10 +++++++++-
4c06b9
 gsettings/dconfsettingsbackend.c |  1 +
4c06b9
 2 files changed, 10 insertions(+), 1 deletion(-)
4c06b9
4c06b9
diff --git a/engine/dconf-engine.c b/engine/dconf-engine.c
4c06b9
index 1963c34..2911724 100644
4c06b9
--- a/engine/dconf-engine.c
4c06b9
+++ b/engine/dconf-engine.c
4c06b9
@@ -928,11 +928,13 @@ dconf_engine_watch_established (DConfEngine  *engine,
4c06b9
        * everything under the path being watched changed.  This case is
4c06b9
        * very rare, anyway...
4c06b9
        */
4c06b9
+      g_debug ("SHM invalidated while establishing subscription to %s - signalling change", ow->path);
4c06b9
       dconf_engine_change_notify (engine, ow->path, changes, NULL, FALSE, NULL, engine->user_data);
4c06b9
     }
4c06b9
 
4c06b9
   guint num_establishing = dconf_engine_count_subscriptions (engine->establishing,
4c06b9
                                                              ow->path);
4c06b9
+  g_debug ("watch_established: \"%s\" (establishing: %d)", ow->path, num_establishing);
4c06b9
   if (num_establishing > 0)
4c06b9
     // Subscription(s): establishing -> active
4c06b9
     dconf_engine_move_subscriptions (engine->establishing,
4c06b9
@@ -948,6 +950,7 @@ dconf_engine_watch_fast (DConfEngine *engine,
4c06b9
 {
4c06b9
   guint num_establishing = dconf_engine_count_subscriptions (engine->establishing, path);
4c06b9
   guint num_active = dconf_engine_count_subscriptions (engine->active, path);
4c06b9
+  g_debug ("watch_fast: \"%s\" (establishing: %d, active: %d)", path, num_establishing, num_active);
4c06b9
   if (num_active > 0)
4c06b9
     // Subscription: inactive -> active
4c06b9
     dconf_engine_inc_subscriptions (engine->active, path);
4c06b9
@@ -1000,6 +1003,7 @@ dconf_engine_unwatch_fast (DConfEngine *engine,
4c06b9
   guint num_active = dconf_engine_count_subscriptions (engine->active, path);
4c06b9
   guint num_establishing = dconf_engine_count_subscriptions (engine->establishing, path);
4c06b9
   gint i;
4c06b9
+  g_debug ("unwatch_fast: \"%s\" (active: %d, establishing: %d)", path, num_active, num_establishing);
4c06b9
 
4c06b9
   // Client code cannot unsubscribe if it is not subscribed
4c06b9
   g_assert (num_active > 0 || num_establishing > 0);
4c06b9
@@ -1056,6 +1060,7 @@ dconf_engine_watch_sync (DConfEngine *engine,
4c06b9
                          const gchar *path)
4c06b9
 {
4c06b9
   guint num_active = dconf_engine_inc_subscriptions (engine->active, path);
4c06b9
+  g_debug ("watch_sync: \"%s\" (active: %d)", path, num_active - 1);
4c06b9
   if (num_active == 1)
4c06b9
     dconf_engine_handle_match_rule_sync (engine, "AddMatch", path);
4c06b9
 }
4c06b9
@@ -1065,6 +1070,7 @@ dconf_engine_unwatch_sync (DConfEngine *engine,
4c06b9
                            const gchar *path)
4c06b9
 {
4c06b9
   guint num_active = dconf_engine_dec_subscriptions (engine->active, path);
4c06b9
+  g_debug ("unwatch_sync: \"%s\" (active: %d)", path, num_active + 1);
4c06b9
   if (num_active == 0)
4c06b9
     dconf_engine_handle_match_rule_sync (engine, "RemoveMatch", path);
4c06b9
 }
4c06b9
@@ -1274,7 +1280,7 @@ dconf_engine_change_fast (DConfEngine     *engine,
4c06b9
                           GError         **error)
4c06b9
 {
4c06b9
   GList *node;
4c06b9
-
4c06b9
+  g_debug ("change_fast");
4c06b9
   if (dconf_changeset_is_empty (changeset))
4c06b9
     return TRUE;
4c06b9
 
4c06b9
@@ -1341,6 +1347,7 @@ dconf_engine_change_sync (DConfEngine     *engine,
4c06b9
                           GError         **error)
4c06b9
 {
4c06b9
   GVariant *reply;
4c06b9
+  g_debug ("change_sync");
4c06b9
 
4c06b9
   if (dconf_changeset_is_empty (changeset))
4c06b9
     {
4c06b9
@@ -1519,6 +1526,7 @@ dconf_engine_has_outstanding (DConfEngine *engine)
4c06b9
 void
4c06b9
 dconf_engine_sync (DConfEngine *engine)
4c06b9
 {
4c06b9
+  g_debug ("sync");
4c06b9
   dconf_engine_lock_queues (engine);
4c06b9
   while (!g_queue_is_empty (&engine->in_flight))
4c06b9
     g_cond_wait (&engine->queue_cond, &engine->queue_lock);
4c06b9
diff --git a/gsettings/dconfsettingsbackend.c b/gsettings/dconfsettingsbackend.c
4c06b9
index 752e013..6c8179b 100644
4c06b9
--- a/gsettings/dconfsettingsbackend.c
4c06b9
+++ b/gsettings/dconfsettingsbackend.c
4c06b9
@@ -232,6 +232,7 @@ dconf_engine_change_notify (DConfEngine         *engine,
4c06b9
 {
4c06b9
   GWeakRef *weak_ref = user_data;
4c06b9
   DConfSettingsBackend *dcsb;
4c06b9
+  g_debug ("change_notify: %s", prefix);
4c06b9
 
4c06b9
   dcsb = g_weak_ref_get (weak_ref);
4c06b9
 
4c06b9
-- 
4c06b9
2.20.1
4c06b9