summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDenis Vlasenko2008-07-20 17:43:21 +0000
committerDenis Vlasenko2008-07-20 17:43:21 +0000
commit1e8034e61432cb3bd4bde1d7a13e809543a1e239 (patch)
tree06017ed43a6474419b5ce9c6aee50be71ff1cf8d
parent09aaf78ad51d95866972a926cb43bafa0c4a5c5e (diff)
downloadbusybox-1e8034e61432cb3bd4bde1d7a13e809543a1e239.zip
busybox-1e8034e61432cb3bd4bde1d7a13e809543a1e239.tar.gz
man: fix breakage: must not die on lines with < 2 tokens
-rw-r--r--miscutils/man.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/miscutils/man.c b/miscutils/man.c
index 75af3d7..7ef5941 100644
--- a/miscutils/man.c
+++ b/miscutils/man.c
@@ -106,13 +106,15 @@ int man_main(int argc UNUSED_PARAM, char **argv)
if (parser) {
/* go through man configuration file and search relevant paths, sections */
char *token[2];
- while (config_read(parser, token, 2, 2, "# \t", PARSE_LAST_IS_GREEDY)) {
+ while (config_read(parser, token, 2, 0, "# \t", PARSE_LAST_IS_GREEDY)) {
+ if (!token[1])
+ continue;
if (strcmp("MANPATH", token[0]) == 0) {
- man_path_list = xrealloc_vector(man_path_list, 4, count_mp);
man_path_list[count_mp] = xstrdup(token[1]);
count_mp++;
/* man_path_list is NULL terminated */
man_path_list[count_mp] = NULL;
+ man_path_list = xrealloc_vector(man_path_list, 4, count_mp);
}
if (strcmp("MANSECT", token[0]) == 0) {
free(sec_list);