From d39b8363ef73ed0c9646410b5cf91263b213003f Mon Sep 17 00:00:00 2001 From: Timo Sirainen Date: Mon, 13 May 2002 19:26:25 +0000 Subject: /SET help_path now supports multiple paths separated with ':' - patch by c0ffee git-svn-id: http://svn.irssi.org/repos/irssi/trunk@2792 dbcabf3a-b0e7-0310-adc4-f8d773084564 --- src/fe-common/core/fe-help.c | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/fe-common/core/fe-help.c b/src/fe-common/core/fe-help.c index c087771b..84a76352 100644 --- a/src/fe-common/core/fe-help.c +++ b/src/fe-common/core/fe-help.c @@ -117,16 +117,27 @@ static void help_category(GSList *cmdlist, int items) static int show_help_file(const char *file) { const char *helppath; - char tmpbuf[1024], *str, *path; + char tmpbuf[1024], *str, *path, **paths, **tmp; LINEBUF_REC *buffer = NULL; int f, ret, recvlen; helppath = settings_get_str("help_path"); - /* helpdir/command or helpdir/category/command */ - path = g_strdup_printf("%s/%s", helppath, file); - f = open(path, O_RDONLY); - g_free(path); + paths = g_strsplit(helppath, ":", -1); + + f = -1; + for (tmp = paths; *tmp != NULL; tmp++) { + /* helpdir/command or helpdir/category/command */ + path = g_strdup_printf("%s/%s", *tmp, file); + f = open(path, O_RDONLY); + g_free(path); + + if (f != -1) + break; + + } + + g_strfreev(paths); if (f == -1) return FALSE; -- cgit v1.2.3