From 8c68c9ab0f75514ee4f0336e566ac2c02ac20b65 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Thu, 26 Apr 2007 02:10:15 +0000 Subject: fixes for new keybindings stuff/chroot/parsing --- openbox/config.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'openbox/config.c') diff --git a/openbox/config.c b/openbox/config.c index aadc4389..2ed6921e 100644 --- a/openbox/config.c +++ b/openbox/config.c @@ -278,6 +278,7 @@ static void parse_key(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node, if (!parse_attr_string("key", node, &key)) return; + parse_attr_bool("chroot", node, &is_chroot); keylist = g_list_append(keylist, key); @@ -304,9 +305,6 @@ static void parse_key(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node, g_free(key); keylist = g_list_delete_link(keylist, g_list_last(keylist)); - - /* go to next sibling */ - if (node->next) parse_key(i, doc, node->next, keylist); } static void parse_keyboard(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node, @@ -325,7 +323,10 @@ static void parse_keyboard(ObParseInst *i, xmlDocPtr doc, xmlNodePtr node, } if ((n = parse_find_node("keybind", node->children))) - parse_key(i, doc, n, NULL); + while (n) { + parse_key(i, doc, n, NULL); + n = parse_find_node("keybind", n->next); + } } /* -- cgit v1.2.3