Blame SOURCES/0001-Engine-add-some-missing-objects-to-dconf_engine_unre.patch

e9528a
From 6e6089791b38b4da84d5b49c0b24286be1526a2b Mon Sep 17 00:00:00 2001
e9528a
From: Daniel Playfair Cal <daniel.playfair.cal@gmail.com>
e9528a
Date: Wed, 25 Jul 2018 23:58:26 +1000
e9528a
Subject: [PATCH 1/5] Engine: add some missing objects to dconf_engine_unref
e9528a
e9528a
---
e9528a
 engine/dconf-engine.c | 9 +++++++++
e9528a
 1 file changed, 9 insertions(+)
e9528a
e9528a
diff --git a/engine/dconf-engine.c b/engine/dconf-engine.c
e9528a
index c0ff12d..2a99eab 100644
e9528a
--- a/engine/dconf-engine.c
e9528a
+++ b/engine/dconf-engine.c
e9528a
@@ -289,11 +289,20 @@ dconf_engine_unref (DConfEngine *engine)
e9528a
 
e9528a
       g_free (engine->last_handled);
e9528a
 
e9528a
+      while (!g_queue_is_empty (&engine->pending))
e9528a
+        dconf_changeset_unref ((DConfChangeset *) g_queue_pop_head (&engine->pending));
e9528a
+
e9528a
+      while (!g_queue_is_empty (&engine->in_flight))
e9528a
+        dconf_changeset_unref ((DConfChangeset *) g_queue_pop_head (&engine->in_flight));
e9528a
+
e9528a
       for (i = 0; i < engine->n_sources; i++)
e9528a
         dconf_engine_source_free (engine->sources[i]);
e9528a
 
e9528a
       g_free (engine->sources);
e9528a
 
e9528a
+      g_hash_table_unref(engine->pending_paths);
e9528a
+      g_hash_table_unref(engine->watched_paths);
e9528a
+
e9528a
       if (engine->free_func)
e9528a
         engine->free_func (engine->user_data);
e9528a
 
e9528a
-- 
e9528a
2.20.1
e9528a