summaryrefslogtreecommitdiff
path: root/openbox
diff options
context:
space:
mode:
authorDana Jansens <danakj@orodu.net>2003-09-08 08:43:49 +0000
committerDana Jansens <danakj@orodu.net>2003-09-08 08:43:49 +0000
commitaafa246e2f70dac1d42eb60d25777c58b6ebe896 (patch)
treeebd43bf9dac4d60edc565735e9c680eaa4f7a892 /openbox
parentc73bd381fe7d4bc601ca1f8ecdb1b8bbf074aa18 (diff)
if the menu path starts with a /, then just load it, don't try the prefixes
Diffstat (limited to 'openbox')
-rw-r--r--openbox/menu.c23
1 files changed, 15 insertions, 8 deletions
diff --git a/openbox/menu.c b/openbox/menu.c
index 286434cf..4a259387 100644
--- a/openbox/menu.c
+++ b/openbox/menu.c
@@ -39,20 +39,27 @@ static gboolean menu_open(gchar *file, xmlDocPtr *doc, xmlNodePtr *node)
gboolean loaded = TRUE;
gchar *p;
- p = g_build_filename(g_get_home_dir(), ".openbox", file, NULL);
- if (!parse_load(p, "openbox_menu", doc, node)) {
- g_free(p);
- p = g_build_filename(RCDIR, file, NULL);
+ if (file[0] == '/') {
+ if (!parse_load(file, "openbox_menu", doc, node)) {
+ g_warning("Failed to load menu from '%s'", file);
+ loaded = FALSE;
+ }
+ } else {
+ p = g_build_filename(g_get_home_dir(), ".openbox", file, NULL);
if (!parse_load(p, "openbox_menu", doc, node)) {
g_free(p);
- p = g_strdup(file);
+ p = g_build_filename(RCDIR, file, NULL);
if (!parse_load(p, "openbox_menu", doc, node)) {
- g_warning("Failed to load menu from '%s'", file);
- loaded = FALSE;
+ g_free(p);
+ p = g_strdup(file);
+ if (!parse_load(p, "openbox_menu", doc, node)) {
+ g_warning("Failed to load menu from '%s'", file);
+ loaded = FALSE;
+ }
}
}
+ g_free(p);
}
- g_free(p);
return loaded;
}