From 51d735672c7a726655867b703d07e390781939de Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Sun, 30 Sep 2012 21:23:58 -0400 Subject: [PATCH] Allow loading of menu files outside of your XDG_CONFIG_HOME (Fix bug 5711) When the given file name can not be found in your XDG_CONFIG_HOME, ie in ~/.config/openbox, then try the file name directly. This means if you specify a menu file such as "/home/dana/helloworld.xml", openbox will try, in order: 1) ~/.config/openbox/home/dana/helloworld.xml 2) /home/dana/helloworld.xml And it will load the file you meant when it tries the second one. --- openbox/menu.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/openbox/menu.c b/openbox/menu.c index eaf081d9..7c49cedb 100644 --- a/openbox/menu.c +++ b/openbox/menu.c @@ -90,7 +90,16 @@ void menu_startup(gboolean reconfig) loaded = TRUE; obt_xml_tree_from_root(menu_parse_inst); obt_xml_close(menu_parse_inst); - } else + } + else if (obt_xml_load_file(menu_parse_inst, + it->data, + "openbox_menu")) + { + loaded = TRUE; + obt_xml_tree_from_root(menu_parse_inst); + obt_xml_close(menu_parse_inst); + } + else g_message(_("Unable to find a valid menu file \"%s\""), (const gchar*)it->data); }