From: Dana Jansens Date: Mon, 1 Oct 2012 01:23:58 +0000 (-0400) Subject: Allow loading of menu files outside of your XDG_CONFIG_HOME (Fix bug 5711) X-Git-Tag: release-3.5.1~73 X-Git-Url: http://git.openbox.org/?p=dana%2Fopenbox.git;a=commitdiff_plain;h=51d735672c7a726655867b703d07e390781939de;hp=dc4cfa94c9cd7bd30cdc87a6e4ab8174d8a9703f 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. --- diff --git a/openbox/menu.c b/openbox/menu.c index eaf081d..7c49ced 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); }