=================================================================== RCS file: /cvs/mandoc/mandocdb.c,v retrieving revision 1.220.2.7 retrieving revision 1.220.2.8 diff -u -p -r1.220.2.7 -r1.220.2.8 --- mandoc/mandocdb.c 2017/01/11 17:46:54 1.220.2.7 +++ mandoc/mandocdb.c 2017/01/27 13:59:28 1.220.2.8 @@ -1,4 +1,4 @@ -/* $Id: mandocdb.c,v 1.220.2.7 2017/01/11 17:46:54 schwarze Exp $ */ +/* $Id: mandocdb.c,v 1.220.2.8 2017/01/27 13:59:28 schwarze Exp $ */ /* * Copyright (c) 2011, 2012 Kristaps Dzonsons * Copyright (c) 2011-2017 Ingo Schwarze @@ -905,6 +905,20 @@ filescan(const char *file) say(start, "Filename too long"); free(mlink); return; + } + + /* + * In test mode or when the original name is absolute + * but outside our tree, guess the base directory. + */ + + if (op == OP_TEST || (start == buf && *start == '/')) { + if (strncmp(buf, "man/", 4) == 0) + start = buf + 4; + else if ((start = strstr(buf, "/man/")) != NULL) + start += 5; + else + start = buf; } /*