summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--manpath.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/manpath.c b/manpath.c
index 7b15533a..84293af0 100644
--- a/manpath.c
+++ b/manpath.c
@@ -224,13 +224,12 @@ manconf_file(struct manconf *conf, const char *file)
while ((linelen = getline(&line, &linesz, stream)) != -1) {
cp = line;
- ep = cp + linelen;
- if (ep[-1] != '\n')
- break;
- *--ep = '\0';
+ ep = cp + linelen - 1;
+ while (ep > cp && isspace((unsigned char)*ep))
+ *ep-- = '\0';
while (isspace((unsigned char)*cp))
cp++;
- if (*cp == '#')
+ if (cp == ep || *cp == '#')
continue;
for (tok = 0; tok < sizeof(toks)/sizeof(toks[0]); tok++) {