From dc91be3095306ef1c3a2917e20da4f98dbd6291e Mon Sep 17 00:00:00 2001 From: Ingo Schwarze Date: Thu, 3 Apr 2014 21:45:31 +0000 Subject: [PATCH] Instead of silently doing nothing at all, warn and return non-zero when the manpath is empty, that is, when /etc/man.conf is non-existent or unreadable AND the environment variable MANPATH is unset or empty AND no directories were given on the command line. Inspired by the error handling in espie@'s makewhatis(8), except that one doesn't know about MANPATH. --- mandocdb.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/mandocdb.c b/mandocdb.c index 6e61c149..5ce63bcb 100644 --- a/mandocdb.c +++ b/mandocdb.c @@ -1,4 +1,4 @@ -/* $Id: mandocdb.c,v 1.126 2014/04/03 16:27:28 schwarze Exp $ */ +/* $Id: mandocdb.c,v 1.127 2014/04/03 21:45:31 schwarze Exp $ */ /* * Copyright (c) 2011, 2012 Kristaps Dzonsons * Copyright (c) 2011, 2012, 2013, 2014 Ingo Schwarze @@ -462,6 +462,11 @@ main(int argc, char *argv[]) } else manpath_parse(&dirs, path_arg, NULL, NULL); + if (0 == dirs.sz) { + exitcode = (int)MANDOCLEVEL_BADARG; + say("", "Empty manpath"); + } + /* * First scan the tree rooted at a base directory, then * build a new database and finally move it into place. -- 2.47.1