From 476654cdbeb2923fc5d2485701587b42579e1635 Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Sun, 30 Nov 2014 19:39:58 +0100 Subject: man: do not mangle $MANPATH in memory Signed-off-by: Denys Vlasenko --- miscutils/man.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'miscutils/man.c') diff --git a/miscutils/man.c b/miscutils/man.c index ccb57a93f..c39870e67 100644 --- a/miscutils/man.c +++ b/miscutils/man.c @@ -155,9 +155,9 @@ static char **add_MANPATH(char **man_path_list, int *count_mp, char *path) next_path = strchr(path, ':'); if (next_path) { - *next_path = '\0'; - if (next_path++ == path) /* "::"? */ + if (next_path == path) /* "::"? */ goto next; + *next_path = '\0'; } /* Do we already have path? */ path_element = man_path_list; @@ -174,8 +174,10 @@ static char **add_MANPATH(char **man_path_list, int *count_mp, char *path) skip: if (!next_path) break; + /* "path" may be a result of getenv(), be nice and don't mangle it */ + *next_path = ':'; next: - path = next_path; + path = next_path + 1; } return man_path_list; } -- cgit v1.2.3