diff options
author | Rui Matos <tiagomatos@gmail.com> | 2013-02-04 17:15:58 +0100 |
---|---|---|
committer | Rui Matos <tiagomatos@gmail.com> | 2013-02-19 12:25:54 +0100 |
commit | fbbb0b1fd86c98ebfbe70de8b9c70c7751b0c0d6 (patch) | |
tree | c39a4ebff71b590f850930b19bf9693aca3538db | |
parent | f457cc8cc48708c920675651df358ac291c2994d (diff) | |
download | gnome-control-center-fbbb0b1fd86c98ebfbe70de8b9c70c7751b0c0d6.tar.gz |
Fix some memory leaks
-rw-r--r-- | panels/common/cc-language-chooser.c | 4 | ||||
-rw-r--r-- | panels/region/cc-format-chooser.c | 2 | ||||
-rw-r--r-- | panels/region/cc-input-options.c | 2 |
3 files changed, 8 insertions, 0 deletions
diff --git a/panels/common/cc-language-chooser.c b/panels/common/cc-language-chooser.c index 9e1c12e9d..6fe7b4216 100644 --- a/panels/common/cc-language-chooser.c +++ b/panels/common/cc-language-chooser.c @@ -224,6 +224,8 @@ add_all_languages (GtkDialog *chooser) locale_ids = gnome_get_all_locales (); initial = cc_common_language_get_initial_languages (); add_languages (chooser, locale_ids, initial); + g_hash_table_destroy (initial); + g_strfreev (locale_ids); } static gboolean @@ -359,6 +361,7 @@ cc_language_chooser_new (GtkWidget *parent) builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, "/org/gnome/control-center/common/language-chooser.ui", &error); if (error) { + g_object_unref (builder); g_warning ("failed to load language chooser: %s", error->message); g_error_free (error); return NULL; @@ -367,6 +370,7 @@ cc_language_chooser_new (GtkWidget *parent) chooser = WID ("language-dialog"); priv = g_new0 (CcLanguageChooserPrivate, 1); g_object_set_data_full (G_OBJECT (chooser), "private", priv, cc_language_chooser_private_free); + g_object_set_data_full (G_OBJECT (chooser), "builder", builder, g_object_unref); priv->filter_entry = WID ("language-filter-entry"); priv->language_list = WID ("language-list"); diff --git a/panels/region/cc-format-chooser.c b/panels/region/cc-format-chooser.c index 43d04f8d6..d213a1674 100644 --- a/panels/region/cc-format-chooser.c +++ b/panels/region/cc-format-chooser.c @@ -444,6 +444,7 @@ cc_format_chooser_new (GtkWidget *parent) builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, "/org/gnome/control-center/region/format-chooser.ui", &error); if (error) { + g_object_unref (builder); g_warning ("failed to load format chooser: %s", error->message); g_error_free (error); return NULL; @@ -452,6 +453,7 @@ cc_format_chooser_new (GtkWidget *parent) chooser = WID ("dialog"); priv = g_new0 (CcFormatChooserPrivate, 1); g_object_set_data_full (G_OBJECT (chooser), "private", priv, cc_format_chooser_private_free); + g_object_set_data_full (G_OBJECT (chooser), "builder", builder, g_object_unref); priv->filter_entry = WID ("region-filter-entry"); priv->list = WID ("region-list"); diff --git a/panels/region/cc-input-options.c b/panels/region/cc-input-options.c index 51c54ebd5..0112e5145 100644 --- a/panels/region/cc-input-options.c +++ b/panels/region/cc-input-options.c @@ -165,6 +165,7 @@ cc_input_options_new (GtkWidget *parent) builder = gtk_builder_new (); gtk_builder_add_from_resource (builder, "/org/gnome/control-center/region/input-options.ui", &error); if (error) { + g_object_unref (builder); g_warning ("failed to load input options: %s", error->message); g_error_free (error); return NULL; @@ -173,6 +174,7 @@ cc_input_options_new (GtkWidget *parent) options = WID ("dialog"); priv = g_new0 (CcInputOptionsPrivate, 1); g_object_set_data_full (G_OBJECT (options), "private", priv, cc_input_options_private_free); + g_object_set_data_full (G_OBJECT (options), "builder", builder, g_object_unref); priv->same_source = WID ("same-source"); priv->per_window_source = WID ("per-window-source"); |