diff options
author | António Fernandes <antoniof@gnome.org> | 2020-12-21 17:21:28 +0000 |
---|---|---|
committer | Ondrej Holy <oholy@redhat.com> | 2021-01-05 08:50:24 +0000 |
commit | 4f6013e7344f030da86aeed9d0d2e3b658a1a429 (patch) | |
tree | 44593d6c83a6e4370756ec5b00f3f437e5e760c9 /src/nautilus-starred-directory.c | |
parent | de4d100359310165f5447e3b55ad9e15a63db72b (diff) | |
download | nautilus-4f6013e7344f030da86aeed9d0d2e3b658a1a429.tar.gz |
tag-manager: Don't leak singleton references
We are leaking references to the singleton object in multiple places.
It's not a problem during runtime, but this means it's not properly
finalized when the application quits, leaking the tracker connection,
which is detected by valgrind.
Add g_autoptr() and g_clear_object() where missing. Also, to prevent
future leaks, document nautilus_tag_manager_get() and uniformize its
use as either an autovariable initializer or a field initializer.
Diffstat (limited to 'src/nautilus-starred-directory.c')
-rw-r--r-- | src/nautilus-starred-directory.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/src/nautilus-starred-directory.c b/src/nautilus-starred-directory.c index c1a3fe534..fd41418a4 100644 --- a/src/nautilus-starred-directory.c +++ b/src/nautilus-starred-directory.c @@ -568,16 +568,12 @@ nautilus_starred_directory_new () static void nautilus_starred_directory_init (NautilusFavoriteDirectory *self) { - NautilusTagManager *tag_manager; - - tag_manager = nautilus_tag_manager_get (); + self->tag_manager = nautilus_tag_manager_get (); - g_signal_connect (tag_manager, + g_signal_connect (self->tag_manager, "starred-changed", (GCallback) on_starred_files_changed, self); - self->tag_manager = tag_manager; - nautilus_starred_directory_set_files (self); } |