diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-09-08 08:43:49 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-09-08 08:43:49 +0000 |
| commit | aafa246e2f70dac1d42eb60d25777c58b6ebe896 (patch) | |
| tree | ebd43bf9dac4d60edc565735e9c680eaa4f7a892 /openbox | |
| parent | c73bd381fe7d4bc601ca1f8ecdb1b8bbf074aa18 (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.c | 23 |
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; } |
