summaryrefslogtreecommitdiff
path: root/rest/rest-main.c
diff options
context:
space:
mode:
authorRoss Burton <ross@burtonini.com>2008-09-04 14:36:43 +0100
committerRob Bradford <rob@linux.intel.com>2008-09-04 16:17:30 +0100
commitae0b6ad71ed495ac6fba25c8b8feb25828e756a0 (patch)
treeb5b832bb25d5fb65b53713070b6a10e28ad1bbec /rest/rest-main.c
parentaf22c26d69e062a181f87e00f7170f07f007868a (diff)
downloadlibrest-ae0b6ad71ed495ac6fba25c8b8feb25828e756a0.tar.gz
Use g_parse_debug_string instead of manually parsing
Diffstat (limited to 'rest/rest-main.c')
-rw-r--r--rest/rest-main.c33
1 files changed, 8 insertions, 25 deletions
diff --git a/rest/rest-main.c b/rest/rest-main.c
index e817db0..7aa8159 100644
--- a/rest/rest-main.c
+++ b/rest/rest-main.c
@@ -9,34 +9,17 @@ guint rest_debug_flags = 0;
void
_rest_setup_debugging (void)
{
- const gchar *tmp;
- gchar **parts;
- gint i = 0;
static gboolean setup_done = FALSE;
+ static const GDebugKey keys[] = {
+ { "xml-parser", REST_DEBUG_XML_PARSER },
+ { "proxy", REST_DEBUG_PROXY }
+ };
- if (setup_done)
+ if (G_LIKELY (setup_done))
return;
- tmp = g_getenv ("REST_DEBUG");
-
- if (tmp)
- {
- parts = g_strsplit (tmp, ",", -1);
-
- for (i = 0; parts[i] != NULL; i++)
- {
- if (g_str_equal (tmp, "xml-parser"))
- {
- rest_debug_flags |= REST_DEBUG_XML_PARSER;
- } else if (g_str_equal (tmp, "proxy")) {
- rest_debug_flags |= REST_DEBUG_PROXY;
- } else if (g_str_equal (tmp, "all")) {
- rest_debug_flags |= REST_DEBUG_ALL;
- }
- }
-
- g_strfreev (parts);
- }
-
+ rest_debug_flags = g_parse_debug_string (g_getenv ("REST_DEBUG"),
+ keys, G_N_ELEMENTS (keys));
+
setup_done = TRUE;
}