diff options
author | Bastien Nocera <hadess@hadess.net> | 2010-11-01 17:38:23 +0000 |
---|---|---|
committer | Bastien Nocera <hadess@hadess.net> | 2010-11-01 17:38:23 +0000 |
commit | 3a9039576c7e866037caf93438d229e600861d18 (patch) | |
tree | 2934497aab441c32652950d0ddb4231a2ec360fe | |
parent | 95ea5d6b23a6d955d1f3c09f90d9eaf5d4d0d369 (diff) | |
download | gnome-control-center-3a9039576c7e866037caf93438d229e600861d18.tar.gz |
default-applications: Simplify load_url_handlers
When what you want is just a new list...
-rw-r--r-- | panels/default-applications/gnome-da-xml.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/panels/default-applications/gnome-da-xml.c b/panels/default-applications/gnome-da-xml.c index a512c88a5..d4b2ee783 100644 --- a/panels/default-applications/gnome-da-xml.c +++ b/panels/default-applications/gnome-da-xml.c @@ -209,12 +209,14 @@ gnome_da_xml_load_xml (GnomeDACapplet *capplet, const gchar * filename) xmlFreeDoc (xml_doc); } -static void -load_url_handlers (GnomeDACapplet *capplet, const gchar *scheme, GList **item_list) +static GList * +load_url_handlers (GnomeDACapplet *capplet, const gchar *scheme) { - GList *app_list, *l; + GList *app_list, *l, *ret; app_list = g_app_info_get_all_for_type (scheme); + ret = NULL; + for (l = app_list; l != NULL; l = l->next) { const gchar *executable; GAppInfo *app_info = l->data; @@ -231,12 +233,14 @@ load_url_handlers (GnomeDACapplet *capplet, const gchar *scheme, GList **item_li /* Steal the reference */ url_item->app_info = app_info; - *item_list = g_list_append (*item_list, url_item); + ret = g_list_prepend (ret, url_item); } else { g_object_unref (app_info); } } g_list_free (app_list); + + return g_list_reverse (ret); } void @@ -261,8 +265,8 @@ gnome_da_xml_load_list (GnomeDACapplet *capplet) } /* Now load URL handlers */ - load_url_handlers (capplet, "x-scheme-handler/http", &capplet->web_browsers); - load_url_handlers (capplet, "x-scheme-handler/mailto", &capplet->mail_readers); + capplet->web_browsers = load_url_handlers (capplet, "x-scheme-handler/http"); + capplet->mail_readers = load_url_handlers (capplet, "x-scheme-handler/mailto"); } void |